//
// Copyright © 2020 osy. All rights reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//     http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//

// !! THIS FILE IS GENERATED FROM const-gen.py, DO NOT MODIFY MANUALLY !!

#import "UTMQemuConfiguration+Constants.h"

@implementation UTMQemuConfiguration (ConstantsGenerated)

+ (NSArray<NSString *>*)supportedArchitectures {
    return @[
             @"alpha",
             @"arm",
             @"aarch64",
             @"avr",
             @"cris",
             @"hppa",
             @"i386",
             @"m68k",
             @"microblaze",
             @"microblazeel",
             @"mips",
             @"mipsel",
             @"mips64",
             @"mips64el",
             @"nios2",
             @"or1k",
             @"ppc",
             @"ppc64",
             @"riscv32",
             @"riscv64",
             @"rx",
             @"s390x",
             @"sh4",
             @"sh4eb",
             @"sparc",
             @"sparc64",
             @"tricore",
             @"x86_64",
             @"xtensa",
             @"xtensaeb",
             ];
}

+ (NSArray<NSString *>*)supportedArchitecturesPretty {
    return @[
             @"Alpha",
             @"ARM (aarch32)",
             @"ARM64 (aarch64)",
             @"AVR",
             @"CRIS",
             @"HPPA",
             @"i386 (x86)",
             @"m68k",
             @"Microblaze",
             @"Microblaze (Little Endian)",
             @"MIPS",
             @"MIPS (Little Endian)",
             @"MIPS64",
             @"MIPS64 (Little Endian)",
             @"NIOS2",
             @"OpenRISC",
             @"PowerPC",
             @"PowerPC64",
             @"RISC-V32",
             @"RISC-V64",
             @"RX",
             @"S390x (zSeries)",
             @"SH4",
             @"SH4 (Big Endian)",
             @"SPARC",
             @"SPARC64",
             @"TriCore",
             @"x86_64",
             @"Xtensa",
             @"Xtensa (Big Endian)",
             ];
}

+ (NSArray<NSString *>*)supportedCpusForArchitecture:(NSString *)architecture {
    return @{
        @"alpha":
            @[
                @"default",
                @"ev4-alpha-cpu",
                @"ev5-alpha-cpu",
                @"ev56-alpha-cpu",
                @"ev6-alpha-cpu",
                @"ev67-alpha-cpu",
                @"ev68-alpha-cpu",
                @"pca56-alpha-cpu",
            ],
        @"arm":
            @[
                @"default",
                @"arm1026",
                @"arm1136",
                @"arm1136-r2",
                @"arm1176",
                @"arm11mpcore",
                @"arm926",
                @"arm946",
                @"cortex-a15",
                @"cortex-a7",
                @"cortex-a8",
                @"cortex-a9",
                @"cortex-m0",
                @"cortex-m3",
                @"cortex-m33",
                @"cortex-m4",
                @"cortex-m55",
                @"cortex-m7",
                @"cortex-r5",
                @"cortex-r5f",
                @"max",
                @"pxa250",
                @"pxa255",
                @"pxa260",
                @"pxa261",
                @"pxa262",
                @"pxa270",
                @"pxa270-a0",
                @"pxa270-a1",
                @"pxa270-b0",
                @"pxa270-b1",
                @"pxa270-c0",
                @"pxa270-c5",
                @"sa1100",
                @"sa1110",
                @"ti925t",
            ],
        @"aarch64":
            @[
                @"default",
                @"a64fx",
                @"arm1026",
                @"arm1136",
                @"arm1136-r2",
                @"arm1176",
                @"arm11mpcore",
                @"arm926",
                @"arm946",
                @"cortex-a15",
                @"cortex-a53",
                @"cortex-a57",
                @"cortex-a7",
                @"cortex-a72",
                @"cortex-a8",
                @"cortex-a9",
                @"cortex-m0",
                @"cortex-m3",
                @"cortex-m33",
                @"cortex-m4",
                @"cortex-m55",
                @"cortex-m7",
                @"cortex-r5",
                @"cortex-r5f",
                @"host",
                @"max",
                @"pxa250",
                @"pxa255",
                @"pxa260",
                @"pxa261",
                @"pxa262",
                @"pxa270",
                @"pxa270-a0",
                @"pxa270-a1",
                @"pxa270-b0",
                @"pxa270-b1",
                @"pxa270-c0",
                @"pxa270-c5",
                @"sa1100",
                @"sa1110",
                @"ti925t",
            ],
        @"avr":
            @[
                @"default",
                @"avr51-avr-cpu",
                @"avr6-avr-cpu",
            ],
        @"cris":
            @[
                @"default",
                @"crisv10",
                @"crisv11",
                @"crisv17",
                @"crisv32",
                @"crisv8",
                @"crisv9",
            ],
        @"hppa":
            @[
                @"default",
            ],
        @"i386":
            @[
                @"486",
                @"486-v1",
                @"EPYC-v1",
                @"EPYC-v3",
                @"EPYC-v2",
                @"EPYC-Milan-v1",
                @"EPYC-Rome-v1",
                @"EPYC-Rome-v2",
                @"Opteron_G2-v1",
                @"Opteron_G3-v1",
                @"Opteron_G1-v1",
                @"Opteron_G4-v1",
                @"Opteron_G5-v1",
                @"phenom-v1",
                @"Broadwell",
                @"Broadwell-IBRS",
                @"Broadwell-noTSX",
                @"Broadwell-noTSX-IBRS",
                @"Cascadelake-Server",
                @"Cascadelake-Server-noTSX",
                @"kvm32-v1",
                @"kvm64-v1",
                @"Conroe",
                @"Cooperlake",
                @"default",
                @"Denverton",
                @"Dhyana",
                @"EPYC",
                @"EPYC-IBPB",
                @"EPYC-Milan",
                @"EPYC-Rome",
                @"max",
                @"coreduo-v1",
                @"Haswell",
                @"Haswell-IBRS",
                @"Haswell-noTSX",
                @"Haswell-noTSX-IBRS",
                @"Dhyana-v1",
                @"Dhyana-v2",
                @"Icelake-Client",
                @"Icelake-Client-noTSX",
                @"Icelake-Server",
                @"Icelake-Server-noTSX",
                @"Denverton-v1",
                @"Denverton-v3",
                @"Denverton-v2",
                @"Snowridge-v1",
                @"Snowridge-v2",
                @"Snowridge-v3",
                @"Snowridge-v4",
                @"Conroe-v1",
                @"Penryn-v1",
                @"Broadwell-v1",
                @"Broadwell-v3",
                @"Broadwell-v2",
                @"Broadwell-v4",
                @"Haswell-v1",
                @"Haswell-v3",
                @"Haswell-v2",
                @"Haswell-v4",
                @"Icelake-Client-v1",
                @"Icelake-Client-v3",
                @"Icelake-Client-v2",
                @"Skylake-Client-v1",
                @"Skylake-Client-v2",
                @"Skylake-Client-v3",
                @"Skylake-Client-v4",
                @"Nehalem-v1",
                @"Nehalem-v2",
                @"IvyBridge-v1",
                @"IvyBridge-v2",
                @"SandyBridge-v1",
                @"SandyBridge-v2",
                @"KnightsMill-v1",
                @"Cascadelake-Server-v1",
                @"Cascadelake-Server-v5",
                @"Cascadelake-Server-v3",
                @"Cascadelake-Server-v4",
                @"Cascadelake-Server-v2",
                @"Cooperlake-v1",
                @"Cooperlake-v2",
                @"Icelake-Server-v1",
                @"Icelake-Server-v3",
                @"Icelake-Server-v4",
                @"Icelake-Server-v5",
                @"Icelake-Server-v2",
                @"Skylake-Server-v1",
                @"Skylake-Server-v2",
                @"Skylake-Server-v3",
                @"Skylake-Server-v4",
                @"Skylake-Server-v5",
                @"n270-v1",
                @"core2duo-v1",
                @"IvyBridge",
                @"IvyBridge-IBRS",
                @"KnightsMill",
                @"Nehalem",
                @"Nehalem-IBRS",
                @"Opteron_G1",
                @"Opteron_G2",
                @"Opteron_G3",
                @"Opteron_G4",
                @"Opteron_G5",
                @"Penryn",
                @"athlon-v1",
                @"qemu32-v1",
                @"qemu64-v1",
                @"SandyBridge",
                @"SandyBridge-IBRS",
                @"Skylake-Client",
                @"Skylake-Client-IBRS",
                @"Skylake-Client-noTSX-IBRS",
                @"Skylake-Server",
                @"Skylake-Server-IBRS",
                @"Skylake-Server-noTSX-IBRS",
                @"Snowridge",
                @"Westmere",
                @"Westmere-v2",
                @"Westmere-v1",
                @"Westmere-IBRS",
                @"athlon",
                @"base",
                @"core2duo",
                @"coreduo",
                @"kvm32",
                @"kvm64",
                @"n270",
                @"pentium",
                @"pentium-v1",
                @"pentium2",
                @"pentium2-v1",
                @"pentium3",
                @"pentium3-v1",
                @"phenom",
                @"qemu32",
                @"qemu64",
            ],
        @"m68k":
            @[
                @"default",
                @"any",
                @"m5206",
                @"m5208",
                @"m68000",
                @"m68010",
                @"m68020",
                @"m68030",
                @"m68040",
                @"m68060",
            ],
        @"microblaze":
            @[
                @"default",
            ],
        @"microblazeel":
            @[
                @"default",
            ],
        @"mips":
            @[
                @"24KEc",
                @"24Kc",
                @"24Kf",
                @"34Kf",
                @"4KEc",
                @"4KEcR1",
                @"4KEm",
                @"4KEmR1",
                @"4Km",
                @"74Kf",
                @"default",
                @"I7200",
                @"M14K",
                @"M14Kc",
                @"P5600",
                @"mips32r6-generic",
            ],
        @"mipsel":
            @[
                @"24KEc",
                @"24Kc",
                @"24Kf",
                @"34Kf",
                @"4KEc",
                @"4KEcR1",
                @"4KEm",
                @"4KEmR1",
                @"4Km",
                @"74Kf",
                @"default",
                @"I7200",
                @"M14K",
                @"M14Kc",
                @"P5600",
                @"mips32r6-generic",
            ],
        @"mips64":
            @[
                @"20Kc",
                @"24KEc",
                @"24Kc",
                @"24Kf",
                @"34Kf",
                @"4KEc",
                @"4KEcR1",
                @"4KEm",
                @"4KEmR1",
                @"4Km",
                @"5KEc",
                @"5KEf",
                @"5Kc",
                @"5Kf",
                @"74Kf",
                @"default",
                @"I6400",
                @"I6500",
                @"I7200",
                @"Loongson-2E",
                @"Loongson-2F",
                @"Loongson-3A1000",
                @"Loongson-3A4000",
                @"M14K",
                @"M14Kc",
                @"MIPS64R2-generic",
                @"P5600",
                @"R4000",
                @"VR5432",
                @"mips32r6-generic",
                @"mips64dspr2",
            ],
        @"mips64el":
            @[
                @"20Kc",
                @"24KEc",
                @"24Kc",
                @"24Kf",
                @"34Kf",
                @"4KEc",
                @"4KEcR1",
                @"4KEm",
                @"4KEmR1",
                @"4Km",
                @"5KEc",
                @"5KEf",
                @"5Kc",
                @"5Kf",
                @"74Kf",
                @"default",
                @"I6400",
                @"I6500",
                @"I7200",
                @"Loongson-2E",
                @"Loongson-2F",
                @"Loongson-3A1000",
                @"Loongson-3A4000",
                @"M14K",
                @"M14Kc",
                @"MIPS64R2-generic",
                @"P5600",
                @"R4000",
                @"VR5432",
                @"mips32r6-generic",
                @"mips64dspr2",
            ],
        @"nios2":
            @[
                @"default",
            ],
        @"or1k":
            @[
                @"default",
                @"any",
                @"or1200",
            ],
        @"ppc":
            @[
                @"403",
                @"405",
                @"405cr",
                @"405gp",
                @"405gpe",
                @"440ep",
                @"460ex",
                @"601",
                @"601v",
                @"603e",
                @"603r",
                @"604e",
                @"740",
                @"7400",
                @"7410",
                @"7441",
                @"7445",
                @"7447",
                @"7447a",
                @"7448",
                @"745",
                @"7450",
                @"7451",
                @"7455",
                @"7457",
                @"7457a",
                @"750",
                @"750cl",
                @"750cx",
                @"750cxe",
                @"750fx",
                @"750gx",
                @"750l",
                @"755",
                @"default",
                @"601_v1",
                @"601_v2",
                @"603",
                @"604",
                @"602",
                @"603e_v1.1",
                @"603e_v1.2",
                @"603e_v1.3",
                @"603e_v1.4",
                @"603e_v2.2",
                @"603e_v3",
                @"603e_v4",
                @"603e_v4.1",
                @"603p",
                @"603e7v",
                @"603e7v1",
                @"603e7",
                @"603e7v2",
                @"603e7t",
                @"740_v1.0",
                @"740e",
                @"750_v1.0",
                @"740_v2.0",
                @"750_v2.0",
                @"750e",
                @"740_v2.1",
                @"750_v2.1",
                @"740_v2.2",
                @"750_v2.2",
                @"740_v3.0",
                @"750_v3.0",
                @"740_v3.1",
                @"750_v3.1",
                @"750cx_v1.0",
                @"750cx_v2.0",
                @"750cx_v2.1",
                @"750cx_v2.2",
                @"750cxe_v2.1",
                @"750cxe_v2.2",
                @"750cxe_v2.3",
                @"750cxe_v2.4",
                @"750cxe_v3.0",
                @"750cxe_v3.1",
                @"745_v1.0",
                @"755_v1.0",
                @"745_v1.1",
                @"755_v1.1",
                @"745_v2.0",
                @"755_v2.0",
                @"745_v2.1",
                @"755_v2.1",
                @"745_v2.2",
                @"755_v2.2",
                @"745_v2.3",
                @"755_v2.3",
                @"745_v2.4",
                @"755_v2.4",
                @"745_v2.5",
                @"755_v2.5",
                @"745_v2.6",
                @"755_v2.6",
                @"745_v2.7",
                @"755_v2.7",
                @"745_v2.8",
                @"755_v2.8",
                @"750cxe_v2.4b",
                @"750cxe_v3.1b",
                @"750cxr",
                @"750cl_v1.0",
                @"750cl_v2.0",
                @"750l_v2.0",
                @"750l_v2.1",
                @"750l_v2.2",
                @"750l_v3.0",
                @"750l_v3.2",
                @"604e_v1.0",
                @"604e_v2.2",
                @"604e_v2.4",
                @"604r",
                @"7400_v1.0",
                @"7400_v1.1",
                @"7400_v2.0",
                @"7400_v2.1",
                @"7400_v2.2",
                @"7400_v2.6",
                @"7400_v2.7",
                @"7400_v2.8",
                @"7400_v2.9",
                @"403ga",
                @"403gb",
                @"403gc",
                @"403gcx",
                @"401a1",
                @"401b2",
                @"iop480",
                @"401c2",
                @"401d2",
                @"401e2",
                @"401f2",
                @"401",
                @"401g2",
                @"g2",
                @"mpc603",
                @"g2hip3",
                @"e300c1",
                @"mpc8343",
                @"mpc8343a",
                @"mpc8343e",
                @"mpc8343ea",
                @"mpc8347ap",
                @"mpc8347at",
                @"mpc8347eap",
                @"mpc8347eat",
                @"mpc8347ep",
                @"mpc8347et",
                @"mpc8347p",
                @"mpc8347t",
                @"mpc8349",
                @"mpc8349a",
                @"mpc8349e",
                @"mpc8349ea",
                @"e300c2",
                @"e300c3",
                @"e300c4",
                @"mpc8377",
                @"mpc8377e",
                @"mpc8378",
                @"mpc8378e",
                @"mpc8379",
                @"mpc8379e",
                @"740p",
                @"750p",
                @"cobra",
                @"460exb",
                @"440epx",
                @"405d2",
                @"x2vp4",
                @"x2vp20",
                @"405gpa",
                @"405gpb",
                @"405cra",
                @"405gpc",
                @"405gpd",
                @"405crb",
                @"405crc",
                @"stb03",
                @"npe4gs3",
                @"npe405h",
                @"npe405h2",
                @"405ez",
                @"npe405l",
                @"405d4",
                @"stb04",
                @"405lp",
                @"440epa",
                @"440epb",
                @"405gpr",
                @"405ep",
                @"stb25",
                @"750fx_v1.0",
                @"750fx_v2.0",
                @"750fx_v2.1",
                @"750fx_v2.2",
                @"750fl",
                @"750fx_v2.3",
                @"750gx_v1.0",
                @"750gx_v1.1",
                @"750gl",
                @"750gx_v1.2",
                @"440-xilinx",
                @"440-xilinx-w-dfpu",
                @"7450_v1.0",
                @"7450_v1.1",
                @"7450_v1.2",
                @"7450_v2.0",
                @"7441_v2.1",
                @"7450_v2.1",
                @"7441_v2.3",
                @"7451_v2.3",
                @"7441_v2.10",
                @"7451_v2.10",
                @"7445_v1.0",
                @"7455_v1.0",
                @"7445_v2.1",
                @"7455_v2.1",
                @"7445_v3.2",
                @"7455_v3.2",
                @"7445_v3.3",
                @"7455_v3.3",
                @"7445_v3.4",
                @"7455_v3.4",
                @"7447_v1.0",
                @"7457_v1.0",
                @"7447_v1.1",
                @"7457_v1.1",
                @"7457_v1.2",
                @"7447a_v1.0",
                @"7457a_v1.0",
                @"7447a_v1.1",
                @"7457a_v1.1",
                @"7447a_v1.2",
                @"7457a_v1.2",
                @"e600",
                @"mpc8610",
                @"mpc8641",
                @"mpc8641d",
                @"7448_v1.0",
                @"7448_v1.1",
                @"7448_v2.0",
                @"7448_v2.1",
                @"7410_v1.0",
                @"7410_v1.1",
                @"7410_v1.2",
                @"7410_v1.3",
                @"7410_v1.4",
                @"e500_v10",
                @"mpc8540_v10",
                @"e500_v20",
                @"mpc8540_v20",
                @"mpc8540_v21",
                @"mpc8541_v10",
                @"mpc8541_v11",
                @"mpc8541e_v10",
                @"mpc8541e_v11",
                @"e500v2_v10",
                @"mpc8543_v10",
                @"mpc8543e_v10",
                @"mpc8548_v10",
                @"mpc8548e_v10",
                @"mpc8555_v10",
                @"mpc8555e_v10",
                @"mpc8560_v10",
                @"mpc8543_v11",
                @"mpc8543e_v11",
                @"mpc8548_v11",
                @"mpc8548e_v11",
                @"mpc8555_v11",
                @"mpc8555e_v11",
                @"e500v2_v20",
                @"mpc8543_v20",
                @"mpc8543e_v20",
                @"mpc8545_v20",
                @"mpc8545e_v20",
                @"mpc8547e_v20",
                @"mpc8548_v20",
                @"mpc8548e_v20",
                @"mpc8560_v20",
                @"e500v2_v21",
                @"mpc8533_v10",
                @"mpc8533e_v10",
                @"mpc8543_v21",
                @"mpc8543e_v21",
                @"mpc8544_v10",
                @"mpc8544e_v10",
                @"mpc8545_v21",
                @"mpc8545e_v21",
                @"mpc8547e_v21",
                @"mpc8548_v21",
                @"mpc8548e_v21",
                @"mpc8560_v21",
                @"e500v2_v22",
                @"mpc8533_v11",
                @"mpc8533e_v11",
                @"mpc8544_v11",
                @"mpc8544e_v11",
                @"mpc8567",
                @"mpc8567e",
                @"mpc8568",
                @"mpc8568e",
                @"e500v2_v30",
                @"mpc8572",
                @"mpc8572e",
                @"e500mc",
                @"g2h4",
                @"g2hip4",
                @"g2le",
                @"g2gp",
                @"g2legp",
                @"g2legp1",
                @"mpc5200_v10",
                @"mpc5200_v11",
                @"mpc5200_v12",
                @"mpc5200b_v20",
                @"mpc5200b_v21",
                @"g2legp3",
                @"e200z5",
                @"e200z6",
                @"g2ls",
                @"g2lels",
                @"apollo6",
                @"apollo7",
                @"apollo7pm",
                @"arthur",
                @"conan/doyle",
                @"default",
                @"e200",
                @"e300",
                @"e500",
                @"e500v1",
                @"e500v2",
                @"g3",
                @"g4",
                @"goldeneye",
                @"goldfinger",
                @"lonestar",
                @"mach5",
                @"max",
                @"mpc5200",
                @"mpc5200b",
                @"mpc52xx",
                @"mpc8240",
                @"mpc8241",
                @"mpc8245",
                @"mpc8247",
                @"mpc8248",
                @"mpc8250",
                @"mpc8250_hip3",
                @"mpc8250_hip4",
                @"mpc8255",
                @"mpc8255_hip3",
                @"mpc8255_hip4",
                @"mpc8260",
                @"mpc8260_hip3",
                @"mpc8260_hip4",
                @"mpc8264",
                @"mpc8264_hip3",
                @"mpc8264_hip4",
                @"mpc8265",
                @"mpc8265_hip3",
                @"mpc8265_hip4",
                @"mpc8266",
                @"mpc8266_hip3",
                @"mpc8266_hip4",
                @"mpc8270",
                @"mpc8271",
                @"mpc8272",
                @"mpc8275",
                @"mpc8280",
                @"mpc82xx",
                @"mpc8347",
                @"mpc8347a",
                @"mpc8347e",
                @"mpc8347ea",
                @"mpc8533",
                @"mpc8533e",
                @"mpc8540",
                @"mpc8541",
                @"mpc8541e",
                @"mpc8543",
                @"mpc8543e",
                @"mpc8544",
                @"mpc8544e",
                @"mpc8545",
                @"mpc8545e",
                @"mpc8547e",
                @"mpc8548",
                @"mpc8548e",
                @"mpc8555",
                @"mpc8555e",
                @"mpc8560",
                @"nitro",
                @"powerquicc-ii",
                @"ppc",
                @"ppc32",
                @"sirocco",
                @"stretch",
                @"typhoon",
                @"vaillant",
                @"vanilla",
                @"vger",
                @"x2vp50",
                @"x2vp7",
            ],
        @"ppc64":
            @[
                @"403",
                @"405",
                @"405cr",
                @"405gp",
                @"405gpe",
                @"440ep",
                @"460ex",
                @"601",
                @"601v",
                @"603e",
                @"603r",
                @"604e",
                @"740",
                @"7400",
                @"7410",
                @"7441",
                @"7445",
                @"7447",
                @"7447a",
                @"7448",
                @"745",
                @"7450",
                @"7451",
                @"7455",
                @"7457",
                @"7457a",
                @"750",
                @"750cl",
                @"750cx",
                @"750cxe",
                @"750fx",
                @"750gx",
                @"750l",
                @"755",
                @"970",
                @"970fx",
                @"970mp",
                @"default",
                @"601_v0",
                @"601_v2",
                @"603",
                @"604",
                @"602",
                @"603e_v1.1",
                @"603e_v1.2",
                @"603e_v1.3",
                @"603e_v1.4",
                @"603e_v2.2",
                @"603e_v3",
                @"603e_v4",
                @"603e_v4.1",
                @"603p",
                @"603e7v",
                @"603e7v1",
                @"603e7",
                @"603e7v2",
                @"603e7t",
                @"740_v1.0",
                @"740e",
                @"750_v1.0",
                @"740_v2.0",
                @"750_v2.0",
                @"750e",
                @"740_v2.1",
                @"750_v2.1",
                @"740_v2.2",
                @"750_v2.2",
                @"740_v3.0",
                @"750_v3.0",
                @"740_v3.1",
                @"750_v3.1",
                @"750cx_v1.0",
                @"750cx_v2.0",
                @"750cx_v2.1",
                @"750cx_v2.2",
                @"750cxe_v2.1",
                @"750cxe_v2.2",
                @"750cxe_v2.3",
                @"750cxe_v2.4",
                @"750cxe_v3.0",
                @"750cxe_v3.1",
                @"745_v1.0",
                @"755_v1.0",
                @"745_v1.1",
                @"755_v1.1",
                @"745_v2.0",
                @"755_v2.0",
                @"745_v2.1",
                @"755_v2.1",
                @"745_v2.2",
                @"755_v2.2",
                @"745_v2.3",
                @"755_v2.3",
                @"745_v2.4",
                @"755_v2.4",
                @"745_v2.5",
                @"755_v2.5",
                @"745_v2.6",
                @"755_v2.6",
                @"745_v2.7",
                @"755_v2.7",
                @"745_v2.8",
                @"755_v2.8",
                @"750cxe_v2.4b",
                @"750cxe_v3.1b",
                @"750cxr",
                @"750cl_v1.0",
                @"750cl_v2.0",
                @"750l_v2.0",
                @"750l_v2.1",
                @"750l_v2.2",
                @"750l_v3.0",
                @"750l_v3.2",
                @"604e_v1.0",
                @"604e_v2.2",
                @"604e_v2.4",
                @"604r",
                @"7400_v1.0",
                @"7400_v1.1",
                @"7400_v2.0",
                @"7400_v2.1",
                @"7400_v2.2",
                @"7400_v2.6",
                @"7400_v2.7",
                @"7400_v2.8",
                @"7400_v2.9",
                @"403ga",
                @"403gb",
                @"403gc",
                @"403gcx",
                @"401a1",
                @"401b2",
                @"iop480",
                @"401c2",
                @"401d2",
                @"401e2",
                @"401f2",
                @"401",
                @"401g2",
                @"970_v2.2",
                @"970fx_v1.0",
                @"power5+_v2.1",
                @"970fx_v2.0",
                @"970fx_v2.1",
                @"970fx_v3.0",
                @"970fx_v3.1",
                @"power7_v2.3",
                @"970mp_v1.0",
                @"970mp_v1.1",
                @"power7+_v2.1",
                @"power8e_v2.1",
                @"power8nvl_v1.0",
                @"power8_v2.0",
                @"power9_v1.0",
                @"power9_v2.0",
                @"power10_v1.0",
                @"power10_v2.0",
                @"g2",
                @"mpc603",
                @"g2hip3",
                @"e300c1",
                @"mpc8343",
                @"mpc8343a",
                @"mpc8343e",
                @"mpc8343ea",
                @"mpc8347ap",
                @"mpc8347at",
                @"mpc8347eap",
                @"mpc8347eat",
                @"mpc8347ep",
                @"mpc8347et",
                @"mpc8347p",
                @"mpc8347t",
                @"mpc8349",
                @"mpc8349a",
                @"mpc8349e",
                @"mpc8349ea",
                @"e300c2",
                @"e300c3",
                @"e300c4",
                @"mpc8377",
                @"mpc8377e",
                @"mpc8378",
                @"mpc8378e",
                @"mpc8379",
                @"mpc8379e",
                @"740p",
                @"750p",
                @"cobra",
                @"460exb",
                @"440epx",
                @"405d2",
                @"x2vp4",
                @"x2vp20",
                @"405gpa",
                @"405gpb",
                @"405cra",
                @"405gpc",
                @"405gpd",
                @"405crb",
                @"405crc",
                @"stb03",
                @"npe4gs3",
                @"npe405h",
                @"npe405h2",
                @"405ez",
                @"npe405l",
                @"405d4",
                @"stb04",
                @"405lp",
                @"440epa",
                @"440epb",
                @"405gpr",
                @"405ep",
                @"stb25",
                @"750fx_v1.0",
                @"750fx_v2.0",
                @"750fx_v2.1",
                @"750fx_v2.2",
                @"750fl",
                @"750fx_v2.3",
                @"750gx_v1.0",
                @"750gx_v1.1",
                @"750gl",
                @"750gx_v1.2",
                @"440-xilinx",
                @"440-xilinx-w-dfpu",
                @"7450_v1.0",
                @"7450_v1.1",
                @"7450_v1.2",
                @"7450_v2.0",
                @"7441_v2.1",
                @"7450_v2.1",
                @"7441_v2.3",
                @"7451_v2.3",
                @"7441_v2.10",
                @"7451_v2.10",
                @"7445_v1.0",
                @"7455_v1.0",
                @"7445_v2.1",
                @"7455_v2.1",
                @"7445_v3.2",
                @"7455_v3.2",
                @"7445_v3.3",
                @"7455_v3.3",
                @"7445_v3.4",
                @"7455_v3.4",
                @"7447_v1.0",
                @"7457_v1.0",
                @"7447_v1.1",
                @"7457_v1.1",
                @"7457_v1.2",
                @"7447a_v1.0",
                @"7457a_v1.0",
                @"7447a_v1.1",
                @"7457a_v1.1",
                @"7447a_v1.2",
                @"7457a_v1.2",
                @"e600",
                @"mpc8610",
                @"mpc8641",
                @"mpc8641d",
                @"7448_v1.0",
                @"7448_v1.1",
                @"7448_v2.0",
                @"7448_v2.1",
                @"7410_v1.0",
                @"7410_v1.1",
                @"7410_v1.2",
                @"7410_v1.3",
                @"7410_v1.4",
                @"e500_v10",
                @"mpc8540_v10",
                @"e500_v20",
                @"mpc8540_v20",
                @"mpc8540_v21",
                @"mpc8541_v10",
                @"mpc8541_v11",
                @"mpc8541e_v10",
                @"mpc8541e_v11",
                @"e500v2_v10",
                @"mpc8543_v10",
                @"mpc8543e_v10",
                @"mpc8548_v10",
                @"mpc8548e_v10",
                @"mpc8555_v10",
                @"mpc8555e_v10",
                @"mpc8560_v10",
                @"mpc8543_v11",
                @"mpc8543e_v11",
                @"mpc8548_v11",
                @"mpc8548e_v11",
                @"mpc8555_v11",
                @"mpc8555e_v11",
                @"e500v2_v20",
                @"mpc8543_v20",
                @"mpc8543e_v20",
                @"mpc8545_v20",
                @"mpc8545e_v20",
                @"mpc8547e_v20",
                @"mpc8548_v20",
                @"mpc8548e_v20",
                @"mpc8560_v20",
                @"e500v2_v21",
                @"mpc8533_v10",
                @"mpc8533e_v10",
                @"mpc8543_v21",
                @"mpc8543e_v21",
                @"mpc8544_v10",
                @"mpc8544e_v10",
                @"mpc8545_v21",
                @"mpc8545e_v21",
                @"mpc8547e_v21",
                @"mpc8548_v21",
                @"mpc8548e_v21",
                @"mpc8560_v21",
                @"e500v2_v22",
                @"mpc8533_v11",
                @"mpc8533e_v11",
                @"mpc8544_v11",
                @"mpc8544e_v11",
                @"mpc8567",
                @"mpc8567e",
                @"mpc8568",
                @"mpc8568e",
                @"e500v2_v30",
                @"mpc8572",
                @"mpc8572e",
                @"e500mc",
                @"e5500",
                @"e6500",
                @"g2h4",
                @"g2hip4",
                @"g2le",
                @"g2gp",
                @"g2legp",
                @"g2legp1",
                @"mpc5200_v10",
                @"mpc5200_v11",
                @"mpc5200_v12",
                @"mpc5200b_v20",
                @"mpc5200b_v21",
                @"g2legp3",
                @"e200z5",
                @"e200z6",
                @"g2ls",
                @"g2lels",
                @"apollo6",
                @"apollo7",
                @"apollo7pm",
                @"arthur",
                @"conan/doyle",
                @"default",
                @"e200",
                @"e300",
                @"e500",
                @"e500v1",
                @"e500v2",
                @"g3",
                @"g4",
                @"goldeneye",
                @"goldfinger",
                @"lonestar",
                @"mach5",
                @"max",
                @"mpc5200",
                @"mpc5200b",
                @"mpc52xx",
                @"mpc8240",
                @"mpc8241",
                @"mpc8245",
                @"mpc8247",
                @"mpc8248",
                @"mpc8250",
                @"mpc8250_hip3",
                @"mpc8250_hip4",
                @"mpc8255",
                @"mpc8255_hip3",
                @"mpc8255_hip4",
                @"mpc8260",
                @"mpc8260_hip3",
                @"mpc8260_hip4",
                @"mpc8264",
                @"mpc8264_hip3",
                @"mpc8264_hip4",
                @"mpc8265",
                @"mpc8265_hip3",
                @"mpc8265_hip4",
                @"mpc8266",
                @"mpc8266_hip3",
                @"mpc8266_hip4",
                @"mpc8270",
                @"mpc8271",
                @"mpc8272",
                @"mpc8275",
                @"mpc8280",
                @"mpc82xx",
                @"mpc8347",
                @"mpc8347a",
                @"mpc8347e",
                @"mpc8347ea",
                @"mpc8533",
                @"mpc8533e",
                @"mpc8540",
                @"mpc8541",
                @"mpc8541e",
                @"mpc8543",
                @"mpc8543e",
                @"mpc8544",
                @"mpc8544e",
                @"mpc8545",
                @"mpc8545e",
                @"mpc8547e",
                @"mpc8548",
                @"mpc8548e",
                @"mpc8555",
                @"mpc8555e",
                @"mpc8560",
                @"nitro",
                @"power10",
                @"power5+",
                @"power5gs",
                @"power7",
                @"power7+",
                @"power8",
                @"power8e",
                @"power8nvl",
                @"power9",
                @"powerquicc-ii",
                @"ppc",
                @"ppc32",
                @"ppc64",
                @"sirocco",
                @"stretch",
                @"typhoon",
                @"vaillant",
                @"vanilla",
                @"vger",
                @"x2vp50",
                @"x2vp7",
            ],
        @"riscv32":
            @[
                @"default",
                @"lowrisc-ibex",
                @"rv32",
                @"sifive-e31",
                @"sifive-e34",
                @"sifive-u34",
            ],
        @"riscv64":
            @[
                @"default",
                @"rv64",
                @"shakti-c",
                @"sifive-e51",
                @"sifive-u54",
            ],
        @"rx":
            @[
                @"default",
                @"rx62n-rx-cpu",
            ],
        @"s390x":
            @[
                @"default",
                @"max",
                @"gen16a",
                @"gen16a-base",
                @"gen16b",
                @"gen16b-base",
                @"z10BC",
                @"z10BC-base",
                @"z10BC.2",
                @"z10BC.2-base",
                @"z10EC",
                @"z10EC-base",
                @"z10EC.2",
                @"z10EC.2-base",
                @"z10EC.3",
                @"z10EC.3-base",
                @"z9BC",
                @"z9BC-base",
                @"z9BC.2",
                @"z9BC.2-base",
                @"z9EC",
                @"z9EC-base",
                @"z9EC.2",
                @"z9EC.2-base",
                @"z9EC.3",
                @"z9EC.3-base",
                @"z13",
                @"z13-base",
                @"z13.2",
                @"z13.2-base",
                @"z13s",
                @"z13s-base",
                @"z14",
                @"z14-base",
                @"z14.2",
                @"z14.2-base",
                @"z14ZR1",
                @"z14ZR1-base",
                @"gen15a",
                @"gen15a-base",
                @"gen15b",
                @"gen15b-base",
                @"z114",
                @"z114-base",
                @"z196",
                @"z196-base",
                @"z196.2",
                @"z196.2-base",
                @"zBC12",
                @"zBC12-base",
                @"zEC12",
                @"zEC12-base",
                @"zEC12.2",
                @"zEC12.2-base",
                @"z800",
                @"z800-base",
                @"z890",
                @"z890-base",
                @"z890.2",
                @"z890.2-base",
                @"z890.3",
                @"z890.3-base",
                @"z900",
                @"z900-base",
                @"z900.2",
                @"z900.2-base",
                @"z900.3",
                @"z900.3-base",
                @"z990",
                @"z990-base",
                @"z990.2",
                @"z990.2-base",
                @"z990.3",
                @"z990.3-base",
                @"z990.4",
                @"z990.4-base",
                @"z990.5",
                @"z990.5-base",
            ],
        @"sh4":
            @[
                @"default",
                @"sh7751r",
                @"sh7785",
            ],
        @"sh4eb":
            @[
                @"default",
                @"sh7751r",
                @"sh7785",
            ],
        @"sparc":
            @[
                @"default",
                @"Fujitsu MB86907",
                @"LEON2",
                @"LEON3",
                @"TI MicroSparc I",
                @"TI MicroSparc II",
                @"TI MicroSparc IIep",
                @"TI SuperSparc 40",
                @"TI SuperSparc 50",
                @"TI SuperSparc 51",
                @"TI SuperSparc 60",
                @"TI SuperSparc 61",
                @"TI SuperSparc II",
            ],
        @"sparc64":
            @[
                @"default",
                @"Fujitsu Sparc64 III",
                @"Fujitsu Sparc64 IV",
                @"Fujitsu Sparc64 V",
                @"NEC UltraSparc I",
                @"Sun UltraSparc III",
                @"Sun UltraSparc III Cu",
                @"Sun UltraSparc IIIi",
                @"Sun UltraSparc IIIi+",
                @"Sun UltraSparc IV",
                @"Sun UltraSparc IV+",
                @"Sun UltraSparc T1",
                @"Sun UltraSparc T2",
                @"TI UltraSparc I",
                @"TI UltraSparc II",
                @"TI UltraSparc IIe",
                @"TI UltraSparc IIi",
            ],
        @"tricore":
            @[
                @"default",
                @"tc1796",
                @"tc1797",
                @"tc27x",
            ],
        @"x86_64":
            @[
                @"486",
                @"486-v1",
                @"EPYC-v1",
                @"EPYC-v3",
                @"EPYC-v2",
                @"EPYC-Milan-v1",
                @"EPYC-Rome-v1",
                @"EPYC-Rome-v2",
                @"Opteron_G2-v1",
                @"Opteron_G3-v1",
                @"Opteron_G1-v1",
                @"Opteron_G4-v1",
                @"Opteron_G5-v1",
                @"phenom-v1",
                @"Broadwell",
                @"Broadwell-IBRS",
                @"Broadwell-noTSX",
                @"Broadwell-noTSX-IBRS",
                @"Cascadelake-Server",
                @"Cascadelake-Server-noTSX",
                @"kvm32-v1",
                @"kvm64-v1",
                @"Conroe",
                @"Cooperlake",
                @"default",
                @"Denverton",
                @"Dhyana",
                @"EPYC",
                @"EPYC-IBPB",
                @"EPYC-Milan",
                @"EPYC-Rome",
                @"max",
                @"coreduo-v1",
                @"Haswell",
                @"Haswell-IBRS",
                @"Haswell-noTSX",
                @"Haswell-noTSX-IBRS",
                @"Dhyana-v1",
                @"Dhyana-v2",
                @"Icelake-Client",
                @"Icelake-Client-noTSX",
                @"Icelake-Server",
                @"Icelake-Server-noTSX",
                @"Denverton-v1",
                @"Denverton-v3",
                @"Denverton-v2",
                @"Snowridge-v1",
                @"Snowridge-v2",
                @"Snowridge-v3",
                @"Snowridge-v4",
                @"Conroe-v1",
                @"Penryn-v1",
                @"Broadwell-v1",
                @"Broadwell-v3",
                @"Broadwell-v2",
                @"Broadwell-v4",
                @"Haswell-v1",
                @"Haswell-v3",
                @"Haswell-v2",
                @"Haswell-v4",
                @"Icelake-Client-v1",
                @"Icelake-Client-v3",
                @"Icelake-Client-v2",
                @"Skylake-Client-v1",
                @"Skylake-Client-v2",
                @"Skylake-Client-v3",
                @"Skylake-Client-v4",
                @"Nehalem-v1",
                @"Nehalem-v2",
                @"IvyBridge-v1",
                @"IvyBridge-v2",
                @"SandyBridge-v1",
                @"SandyBridge-v2",
                @"KnightsMill-v1",
                @"Cascadelake-Server-v1",
                @"Cascadelake-Server-v5",
                @"Cascadelake-Server-v3",
                @"Cascadelake-Server-v4",
                @"Cascadelake-Server-v2",
                @"Cooperlake-v1",
                @"Cooperlake-v2",
                @"Icelake-Server-v1",
                @"Icelake-Server-v3",
                @"Icelake-Server-v4",
                @"Icelake-Server-v5",
                @"Icelake-Server-v2",
                @"Skylake-Server-v1",
                @"Skylake-Server-v2",
                @"Skylake-Server-v3",
                @"Skylake-Server-v4",
                @"Skylake-Server-v5",
                @"n270-v1",
                @"core2duo-v1",
                @"IvyBridge",
                @"IvyBridge-IBRS",
                @"KnightsMill",
                @"Nehalem",
                @"Nehalem-IBRS",
                @"Opteron_G1",
                @"Opteron_G2",
                @"Opteron_G3",
                @"Opteron_G4",
                @"Opteron_G5",
                @"Penryn",
                @"athlon-v1",
                @"qemu32-v1",
                @"qemu64-v1",
                @"SandyBridge",
                @"SandyBridge-IBRS",
                @"Skylake-Client",
                @"Skylake-Client-IBRS",
                @"Skylake-Client-noTSX-IBRS",
                @"Skylake-Server",
                @"Skylake-Server-IBRS",
                @"Skylake-Server-noTSX-IBRS",
                @"Snowridge",
                @"Westmere",
                @"Westmere-v2",
                @"Westmere-v1",
                @"Westmere-IBRS",
                @"athlon",
                @"base",
                @"core2duo",
                @"coreduo",
                @"kvm32",
                @"kvm64",
                @"n270",
                @"pentium",
                @"pentium-v1",
                @"pentium2",
                @"pentium2-v1",
                @"pentium3",
                @"pentium3-v1",
                @"phenom",
                @"qemu32",
                @"qemu64",
            ],
        @"xtensa":
            @[
                @"default",
                @"dc232b",
                @"dc233c",
                @"de212",
                @"de233_fpu",
                @"dsp3400",
                @"sample_controller",
                @"test_mmuhifi_c3",
            ],
        @"xtensaeb":
            @[
                @"default",
                @"fsf",
                @"test_kc705_be",
            ],
    }[architecture];
}

+ (NSArray<NSString *>*)supportedCpusForArchitecturePretty:(NSString *)architecture {
    return @{
        @"alpha":
            @[
                @"Default",
                @"ev4-alpha-cpu",
                @"ev5-alpha-cpu",
                @"ev56-alpha-cpu",
                @"ev6-alpha-cpu",
                @"ev67-alpha-cpu",
                @"ev68-alpha-cpu",
                @"pca56-alpha-cpu",
            ],
        @"arm":
            @[
                @"Default",
                @"arm1026",
                @"arm1136",
                @"arm1136-r2",
                @"arm1176",
                @"arm11mpcore",
                @"arm926",
                @"arm946",
                @"cortex-a15",
                @"cortex-a7",
                @"cortex-a8",
                @"cortex-a9",
                @"cortex-m0",
                @"cortex-m3",
                @"cortex-m33",
                @"cortex-m4",
                @"cortex-m55",
                @"cortex-m7",
                @"cortex-r5",
                @"cortex-r5f",
                @"max",
                @"pxa250",
                @"pxa255",
                @"pxa260",
                @"pxa261",
                @"pxa262",
                @"pxa270",
                @"pxa270-a0",
                @"pxa270-a1",
                @"pxa270-b0",
                @"pxa270-b1",
                @"pxa270-c0",
                @"pxa270-c5",
                @"sa1100",
                @"sa1110",
                @"ti925t",
            ],
        @"aarch64":
            @[
                @"Default",
                @"a64fx",
                @"arm1026",
                @"arm1136",
                @"arm1136-r2",
                @"arm1176",
                @"arm11mpcore",
                @"arm926",
                @"arm946",
                @"cortex-a15",
                @"cortex-a53",
                @"cortex-a57",
                @"cortex-a7",
                @"cortex-a72",
                @"cortex-a8",
                @"cortex-a9",
                @"cortex-m0",
                @"cortex-m3",
                @"cortex-m33",
                @"cortex-m4",
                @"cortex-m55",
                @"cortex-m7",
                @"cortex-r5",
                @"cortex-r5f",
                @"host",
                @"max",
                @"pxa250",
                @"pxa255",
                @"pxa260",
                @"pxa261",
                @"pxa262",
                @"pxa270",
                @"pxa270-a0",
                @"pxa270-a1",
                @"pxa270-b0",
                @"pxa270-b1",
                @"pxa270-c0",
                @"pxa270-c5",
                @"sa1100",
                @"sa1110",
                @"ti925t",
            ],
        @"avr":
            @[
                @"Default",
                @"avr51-avr-cpu",
                @"avr6-avr-cpu",
            ],
        @"cris":
            @[
                @"Default",
                @"crisv10",
                @"crisv11",
                @"crisv17",
                @"crisv32",
                @"crisv8",
                @"crisv9",
            ],
        @"hppa":
            @[
                @"Default",
            ],
        @"i386":
            @[
                @"486",
                @"486-v1",
                @"AMD EPYC Processor (EPYC-v1)",
                @"AMD EPYC Processor (EPYC-v3)",
                @"AMD EPYC Processor (with IBPB) (EPYC-v2)",
                @"AMD EPYC-Milan Processor (EPYC-Milan-v1)",
                @"AMD EPYC-Rome Processor (EPYC-Rome-v1)",
                @"AMD EPYC-Rome Processor (EPYC-Rome-v2)",
                @"AMD Opteron 22xx (Gen 2 Class Opteron) (Opteron_G2-v1)",
                @"AMD Opteron 23xx (Gen 3 Class Opteron) (Opteron_G3-v1)",
                @"AMD Opteron 240 (Gen 1 Class Opteron) (Opteron_G1-v1)",
                @"AMD Opteron 62xx class CPU (Opteron_G4-v1)",
                @"AMD Opteron 63xx class CPU (Opteron_G5-v1)",
                @"AMD Phenom(tm) 9550 Quad-Core Processor (phenom-v1)",
                @"Broadwell",
                @"Broadwell-IBRS",
                @"Broadwell-noTSX",
                @"Broadwell-noTSX-IBRS",
                @"Cascadelake-Server",
                @"Cascadelake-Server-noTSX",
                @"Common 32-bit KVM processor (kvm32-v1)",
                @"Common KVM processor (kvm64-v1)",
                @"Conroe",
                @"Cooperlake",
                @"Default",
                @"Denverton",
                @"Dhyana",
                @"EPYC",
                @"EPYC-IBPB",
                @"EPYC-Milan",
                @"EPYC-Rome",
                @"Enables all features supported by the accelerator in the current host (max)",
                @"Genuine Intel(R) CPU T2600 @ 2.16GHz (coreduo-v1)",
                @"Haswell",
                @"Haswell-IBRS",
                @"Haswell-noTSX",
                @"Haswell-noTSX-IBRS",
                @"Hygon Dhyana Processor (Dhyana-v1)",
                @"Hygon Dhyana Processor [XSAVES] (Dhyana-v2)",
                @"Icelake-Client",
                @"Icelake-Client-noTSX",
                @"Icelake-Server",
                @"Icelake-Server-noTSX",
                @"Intel Atom Processor (Denverton) (Denverton-v1)",
                @"Intel Atom Processor (Denverton) [XSAVES, no MPX, no MONITOR] (Denverton-v3)",
                @"Intel Atom Processor (Denverton) [no MPX, no MONITOR] (Denverton-v2)",
                @"Intel Atom Processor (SnowRidge) (Snowridge-v1)",
                @"Intel Atom Processor (Snowridge, no MPX) (Snowridge-v2)",
                @"Intel Atom Processor (Snowridge, no MPX) [XSAVES, no MPX] (Snowridge-v3)",
                @"Intel Atom Processor (Snowridge, no MPX) [no split lock detect, no core-capability] (Snowridge-v4)",
                @"Intel Celeron_4x0 (Conroe/Merom Class Core 2) (Conroe-v1)",
                @"Intel Core 2 Duo P9xxx (Penryn Class Core 2) (Penryn-v1)",
                @"Intel Core Processor (Broadwell) (Broadwell-v1)",
                @"Intel Core Processor (Broadwell, IBRS) (Broadwell-v3)",
                @"Intel Core Processor (Broadwell, no TSX) (Broadwell-v2)",
                @"Intel Core Processor (Broadwell, no TSX, IBRS) (Broadwell-v4)",
                @"Intel Core Processor (Haswell) (Haswell-v1)",
                @"Intel Core Processor (Haswell, IBRS) (Haswell-v3)",
                @"Intel Core Processor (Haswell, no TSX) (Haswell-v2)",
                @"Intel Core Processor (Haswell, no TSX, IBRS) (Haswell-v4)",
                @"Intel Core Processor (Icelake) [deprecated] (Icelake-Client-v1)",
                @"Intel Core Processor (Icelake) [no TSX, XSAVES, deprecated] (Icelake-Client-v3)",
                @"Intel Core Processor (Icelake) [no TSX, deprecated] (Icelake-Client-v2)",
                @"Intel Core Processor (Skylake) (Skylake-Client-v1)",
                @"Intel Core Processor (Skylake, IBRS) (Skylake-Client-v2)",
                @"Intel Core Processor (Skylake, IBRS, no TSX) (Skylake-Client-v3)",
                @"Intel Core Processor (Skylake, IBRS, no TSX) [IBRS, XSAVES, no TSX] (Skylake-Client-v4)",
                @"Intel Core i7 9xx (Nehalem Class Core i7) (Nehalem-v1)",
                @"Intel Core i7 9xx (Nehalem Core i7, IBRS update) (Nehalem-v2)",
                @"Intel Xeon E3-12xx v2 (Ivy Bridge) (IvyBridge-v1)",
                @"Intel Xeon E3-12xx v2 (Ivy Bridge, IBRS) (IvyBridge-v2)",
                @"Intel Xeon E312xx (Sandy Bridge) (SandyBridge-v1)",
                @"Intel Xeon E312xx (Sandy Bridge, IBRS update) (SandyBridge-v2)",
                @"Intel Xeon Phi Processor (Knights Mill) (KnightsMill-v1)",
                @"Intel Xeon Processor (Cascadelake) (Cascadelake-Server-v1)",
                @"Intel Xeon Processor (Cascadelake) [ARCH_CAPABILITIES, EPT switching, XSAVES, no TSX] (Cascadelake-Server-v5)",
                @"Intel Xeon Processor (Cascadelake) [ARCH_CAPABILITIES, no TSX] (Cascadelake-Server-v3)",
                @"Intel Xeon Processor (Cascadelake) [ARCH_CAPABILITIES, no TSX] (Cascadelake-Server-v4)",
                @"Intel Xeon Processor (Cascadelake) [ARCH_CAPABILITIES] (Cascadelake-Server-v2)",
                @"Intel Xeon Processor (Cooperlake) (Cooperlake-v1)",
                @"Intel Xeon Processor (Cooperlake) [XSAVES] (Cooperlake-v2)",
                @"Intel Xeon Processor (Icelake) (Icelake-Server-v1)",
                @"Intel Xeon Processor (Icelake) (Icelake-Server-v3)",
                @"Intel Xeon Processor (Icelake) (Icelake-Server-v4)",
                @"Intel Xeon Processor (Icelake) [XSAVES] (Icelake-Server-v5)",
                @"Intel Xeon Processor (Icelake) [no TSX] (Icelake-Server-v2)",
                @"Intel Xeon Processor (Skylake) (Skylake-Server-v1)",
                @"Intel Xeon Processor (Skylake, IBRS) (Skylake-Server-v2)",
                @"Intel Xeon Processor (Skylake, IBRS, no TSX) (Skylake-Server-v3)",
                @"Intel Xeon Processor (Skylake, IBRS, no TSX) (Skylake-Server-v4)",
                @"Intel Xeon Processor (Skylake, IBRS, no TSX) [IBRS, XSAVES, EPT switching, no TSX] (Skylake-Server-v5)",
                @"Intel(R) Atom(TM) CPU N270 @ 1.60GHz (n270-v1)",
                @"Intel(R) Core(TM)2 Duo CPU T7700 @ 2.40GHz (core2duo-v1)",
                @"IvyBridge",
                @"IvyBridge-IBRS",
                @"KnightsMill",
                @"Nehalem",
                @"Nehalem-IBRS",
                @"Opteron_G1",
                @"Opteron_G2",
                @"Opteron_G3",
                @"Opteron_G4",
                @"Opteron_G5",
                @"Penryn",
                @"QEMU Virtual CPU version 2.5+ (athlon-v1)",
                @"QEMU Virtual CPU version 2.5+ (qemu32-v1)",
                @"QEMU Virtual CPU version 2.5+ (qemu64-v1)",
                @"SandyBridge",
                @"SandyBridge-IBRS",
                @"Skylake-Client",
                @"Skylake-Client-IBRS",
                @"Skylake-Client-noTSX-IBRS",
                @"Skylake-Server",
                @"Skylake-Server-IBRS",
                @"Skylake-Server-noTSX-IBRS",
                @"Snowridge",
                @"Westmere",
                @"Westmere E56xx/L56xx/X56xx (IBRS update) (Westmere-v2)",
                @"Westmere E56xx/L56xx/X56xx (Nehalem-C) (Westmere-v1)",
                @"Westmere-IBRS",
                @"athlon",
                @"base CPU model type with no features enabled (base)",
                @"core2duo",
                @"coreduo",
                @"kvm32",
                @"kvm64",
                @"n270",
                @"pentium",
                @"pentium-v1",
                @"pentium2",
                @"pentium2-v1",
                @"pentium3",
                @"pentium3-v1",
                @"phenom",
                @"qemu32",
                @"qemu64",
            ],
        @"m68k":
            @[
                @"Default",
                @"any",
                @"m5206",
                @"m5208",
                @"m68000",
                @"m68010",
                @"m68020",
                @"m68030",
                @"m68040",
                @"m68060",
            ],
        @"microblaze":
            @[
                @"Default",
            ],
        @"microblazeel":
            @[
                @"Default",
            ],
        @"mips":
            @[
                @"24KEc",
                @"24Kc",
                @"24Kf",
                @"34Kf",
                @"4KEc",
                @"4KEcR1",
                @"4KEm",
                @"4KEmR1",
                @"4Km",
                @"74Kf",
                @"Default",
                @"I7200",
                @"M14K",
                @"M14Kc",
                @"P5600",
                @"mips32r6-generic",
            ],
        @"mipsel":
            @[
                @"24KEc",
                @"24Kc",
                @"24Kf",
                @"34Kf",
                @"4KEc",
                @"4KEcR1",
                @"4KEm",
                @"4KEmR1",
                @"4Km",
                @"74Kf",
                @"Default",
                @"I7200",
                @"M14K",
                @"M14Kc",
                @"P5600",
                @"mips32r6-generic",
            ],
        @"mips64":
            @[
                @"20Kc",
                @"24KEc",
                @"24Kc",
                @"24Kf",
                @"34Kf",
                @"4KEc",
                @"4KEcR1",
                @"4KEm",
                @"4KEmR1",
                @"4Km",
                @"5KEc",
                @"5KEf",
                @"5Kc",
                @"5Kf",
                @"74Kf",
                @"Default",
                @"I6400",
                @"I6500",
                @"I7200",
                @"Loongson-2E",
                @"Loongson-2F",
                @"Loongson-3A1000",
                @"Loongson-3A4000",
                @"M14K",
                @"M14Kc",
                @"MIPS64R2-generic",
                @"P5600",
                @"R4000",
                @"VR5432",
                @"mips32r6-generic",
                @"mips64dspr2",
            ],
        @"mips64el":
            @[
                @"20Kc",
                @"24KEc",
                @"24Kc",
                @"24Kf",
                @"34Kf",
                @"4KEc",
                @"4KEcR1",
                @"4KEm",
                @"4KEmR1",
                @"4Km",
                @"5KEc",
                @"5KEf",
                @"5Kc",
                @"5Kf",
                @"74Kf",
                @"Default",
                @"I6400",
                @"I6500",
                @"I7200",
                @"Loongson-2E",
                @"Loongson-2F",
                @"Loongson-3A1000",
                @"Loongson-3A4000",
                @"M14K",
                @"M14Kc",
                @"MIPS64R2-generic",
                @"P5600",
                @"R4000",
                @"VR5432",
                @"mips32r6-generic",
                @"mips64dspr2",
            ],
        @"nios2":
            @[
                @"Default",
            ],
        @"or1k":
            @[
                @"Default",
                @"any",
                @"or1200",
            ],
        @"ppc":
            @[
                @"403",
                @"405",
                @"405cr",
                @"405gp",
                @"405gpe",
                @"440ep",
                @"460ex",
                @"601",
                @"601v",
                @"603e",
                @"603r",
                @"604e",
                @"740",
                @"7400",
                @"7410",
                @"7441",
                @"7445",
                @"7447",
                @"7447a",
                @"7448",
                @"745",
                @"7450",
                @"7451",
                @"7455",
                @"7457",
                @"7457a",
                @"750",
                @"750cl",
                @"750cx",
                @"750cxe",
                @"750fx",
                @"750gx",
                @"750l",
                @"755",
                @"Default",
                @"PVR 00010001 (601_v1)",
                @"PVR 00010002 (601_v2)",
                @"PVR 00030100 (603)",
                @"PVR 00040103 (604)",
                @"PVR 00050100 (602)",
                @"PVR 00060101 (603e_v1.1)",
                @"PVR 00060102 (603e_v1.2)",
                @"PVR 00060103 (603e_v1.3)",
                @"PVR 00060104 (603e_v1.4)",
                @"PVR 00060202 (603e_v2.2)",
                @"PVR 00060300 (603e_v3)",
                @"PVR 00060400 (603e_v4)",
                @"PVR 00060401 (603e_v4.1)",
                @"PVR 00070000 (603p)",
                @"PVR 00070100 (603e7v)",
                @"PVR 00070101 (603e7v1)",
                @"PVR 00070200 (603e7)",
                @"PVR 00070201 (603e7v2)",
                @"PVR 00071201 (603e7t)",
                @"PVR 00080100 (740_v1.0)",
                @"PVR 00080100 (740e)",
                @"PVR 00080100 (750_v1.0)",
                @"PVR 00080200 (740_v2.0)",
                @"PVR 00080200 (750_v2.0)",
                @"PVR 00080200 (750e)",
                @"PVR 00080201 (740_v2.1)",
                @"PVR 00080201 (750_v2.1)",
                @"PVR 00080202 (740_v2.2)",
                @"PVR 00080202 (750_v2.2)",
                @"PVR 00080300 (740_v3.0)",
                @"PVR 00080300 (750_v3.0)",
                @"PVR 00080301 (740_v3.1)",
                @"PVR 00080301 (750_v3.1)",
                @"PVR 00082100 (750cx_v1.0)",
                @"PVR 00082200 (750cx_v2.0)",
                @"PVR 00082201 (750cx_v2.1)",
                @"PVR 00082202 (750cx_v2.2)",
                @"PVR 00082211 (750cxe_v2.1)",
                @"PVR 00082212 (750cxe_v2.2)",
                @"PVR 00082213 (750cxe_v2.3)",
                @"PVR 00082214 (750cxe_v2.4)",
                @"PVR 00082310 (750cxe_v3.0)",
                @"PVR 00082311 (750cxe_v3.1)",
                @"PVR 00083100 (745_v1.0)",
                @"PVR 00083100 (755_v1.0)",
                @"PVR 00083101 (745_v1.1)",
                @"PVR 00083101 (755_v1.1)",
                @"PVR 00083200 (745_v2.0)",
                @"PVR 00083200 (755_v2.0)",
                @"PVR 00083201 (745_v2.1)",
                @"PVR 00083201 (755_v2.1)",
                @"PVR 00083202 (745_v2.2)",
                @"PVR 00083202 (755_v2.2)",
                @"PVR 00083203 (745_v2.3)",
                @"PVR 00083203 (755_v2.3)",
                @"PVR 00083204 (745_v2.4)",
                @"PVR 00083204 (755_v2.4)",
                @"PVR 00083205 (745_v2.5)",
                @"PVR 00083205 (755_v2.5)",
                @"PVR 00083206 (745_v2.6)",
                @"PVR 00083206 (755_v2.6)",
                @"PVR 00083207 (745_v2.7)",
                @"PVR 00083207 (755_v2.7)",
                @"PVR 00083208 (745_v2.8)",
                @"PVR 00083208 (755_v2.8)",
                @"PVR 00083214 (750cxe_v2.4b)",
                @"PVR 00083311 (750cxe_v3.1b)",
                @"PVR 00083410 (750cxr)",
                @"PVR 00087200 (750cl_v1.0)",
                @"PVR 00087210 (750cl_v2.0)",
                @"PVR 00088200 (750l_v2.0)",
                @"PVR 00088201 (750l_v2.1)",
                @"PVR 00088202 (750l_v2.2)",
                @"PVR 00088300 (750l_v3.0)",
                @"PVR 00088302 (750l_v3.2)",
                @"PVR 00090100 (604e_v1.0)",
                @"PVR 00090202 (604e_v2.2)",
                @"PVR 00090204 (604e_v2.4)",
                @"PVR 000a0101 (604r)",
                @"PVR 000c0100 (7400_v1.0)",
                @"PVR 000c0101 (7400_v1.1)",
                @"PVR 000c0200 (7400_v2.0)",
                @"PVR 000c0201 (7400_v2.1)",
                @"PVR 000c0202 (7400_v2.2)",
                @"PVR 000c0206 (7400_v2.6)",
                @"PVR 000c0207 (7400_v2.7)",
                @"PVR 000c0208 (7400_v2.8)",
                @"PVR 000c0209 (7400_v2.9)",
                @"PVR 00200011 (403ga)",
                @"PVR 00200100 (403gb)",
                @"PVR 00200200 (403gc)",
                @"PVR 00201400 (403gcx)",
                @"PVR 00210000 (401a1)",
                @"PVR 00220000 (401b2)",
                @"PVR 00220000 (iop480)",
                @"PVR 00230000 (401c2)",
                @"PVR 00240000 (401d2)",
                @"PVR 00250000 (401e2)",
                @"PVR 00260000 (401f2)",
                @"PVR 00270000 (401)",
                @"PVR 00270000 (401g2)",
                @"PVR 00810011 (g2)",
                @"PVR 00810100 (mpc603)",
                @"PVR 00810101 (g2hip3)",
                @"PVR 00830010 (e300c1)",
                @"PVR 00830010 (mpc8343)",
                @"PVR 00830010 (mpc8343a)",
                @"PVR 00830010 (mpc8343e)",
                @"PVR 00830010 (mpc8343ea)",
                @"PVR 00830010 (mpc8347ap)",
                @"PVR 00830010 (mpc8347at)",
                @"PVR 00830010 (mpc8347eap)",
                @"PVR 00830010 (mpc8347eat)",
                @"PVR 00830010 (mpc8347ep)",
                @"PVR 00830010 (mpc8347et)",
                @"PVR 00830010 (mpc8347p)",
                @"PVR 00830010 (mpc8347t)",
                @"PVR 00830010 (mpc8349)",
                @"PVR 00830010 (mpc8349a)",
                @"PVR 00830010 (mpc8349e)",
                @"PVR 00830010 (mpc8349ea)",
                @"PVR 00840010 (e300c2)",
                @"PVR 00850010 (e300c3)",
                @"PVR 00860010 (e300c4)",
                @"PVR 00860010 (mpc8377)",
                @"PVR 00860010 (mpc8377e)",
                @"PVR 00860010 (mpc8378)",
                @"PVR 00860010 (mpc8378e)",
                @"PVR 00860010 (mpc8379)",
                @"PVR 00860010 (mpc8379e)",
                @"PVR 10080000 (740p)",
                @"PVR 10080000 (750p)",
                @"PVR 10100000 (cobra)",
                @"PVR 130218a4 (460exb)",
                @"PVR 200008d0 (440epx)",
                @"PVR 20010000 (405d2)",
                @"PVR 20010820 (x2vp4)",
                @"PVR 20010860 (x2vp20)",
                @"PVR 40110000 (405gpa)",
                @"PVR 40110040 (405gpb)",
                @"PVR 40110041 (405cra)",
                @"PVR 40110082 (405gpc)",
                @"PVR 401100c4 (405gpd)",
                @"PVR 401100c5 (405crb)",
                @"PVR 40110145 (405crc)",
                @"PVR 40310000 (stb03)",
                @"PVR 40b10000 (npe4gs3)",
                @"PVR 414100c0 (npe405h)",
                @"PVR 41410140 (npe405h2)",
                @"PVR 41511460 (405ez)",
                @"PVR 416100c0 (npe405l)",
                @"PVR 41810000 (405d4)",
                @"PVR 41810000 (stb04)",
                @"PVR 41f10000 (405lp)",
                @"PVR 42221850 (440epa)",
                @"PVR 422218d3 (440epb)",
                @"PVR 50910951 (405gpr)",
                @"PVR 51210950 (405ep)",
                @"PVR 51510950 (stb25)",
                @"PVR 70000100 (750fx_v1.0)",
                @"PVR 70000200 (750fx_v2.0)",
                @"PVR 70000201 (750fx_v2.1)",
                @"PVR 70000202 (750fx_v2.2)",
                @"PVR 70000203 (750fl)",
                @"PVR 70000203 (750fx_v2.3)",
                @"PVR 70020100 (750gx_v1.0)",
                @"PVR 70020101 (750gx_v1.1)",
                @"PVR 70020102 (750gl)",
                @"PVR 70020102 (750gx_v1.2)",
                @"PVR 7ff21910 (440-xilinx)",
                @"PVR 7ff21910 (440-xilinx-w-dfpu)",
                @"PVR 80000100 (7450_v1.0)",
                @"PVR 80000101 (7450_v1.1)",
                @"PVR 80000102 (7450_v1.2)",
                @"PVR 80000200 (7450_v2.0)",
                @"PVR 80000201 (7441_v2.1)",
                @"PVR 80000201 (7450_v2.1)",
                @"PVR 80000203 (7441_v2.3)",
                @"PVR 80000203 (7451_v2.3)",
                @"PVR 80000210 (7441_v2.10)",
                @"PVR 80000210 (7451_v2.10)",
                @"PVR 80010100 (7445_v1.0)",
                @"PVR 80010100 (7455_v1.0)",
                @"PVR 80010201 (7445_v2.1)",
                @"PVR 80010201 (7455_v2.1)",
                @"PVR 80010302 (7445_v3.2)",
                @"PVR 80010302 (7455_v3.2)",
                @"PVR 80010303 (7445_v3.3)",
                @"PVR 80010303 (7455_v3.3)",
                @"PVR 80010304 (7445_v3.4)",
                @"PVR 80010304 (7455_v3.4)",
                @"PVR 80020100 (7447_v1.0)",
                @"PVR 80020100 (7457_v1.0)",
                @"PVR 80020101 (7447_v1.1)",
                @"PVR 80020101 (7457_v1.1)",
                @"PVR 80020102 (7457_v1.2)",
                @"PVR 80030100 (7447a_v1.0)",
                @"PVR 80030100 (7457a_v1.0)",
                @"PVR 80030101 (7447a_v1.1)",
                @"PVR 80030101 (7457a_v1.1)",
                @"PVR 80030102 (7447a_v1.2)",
                @"PVR 80030102 (7457a_v1.2)",
                @"PVR 80040010 (e600)",
                @"PVR 80040010 (mpc8610)",
                @"PVR 80040010 (mpc8641)",
                @"PVR 80040010 (mpc8641d)",
                @"PVR 80040100 (7448_v1.0)",
                @"PVR 80040101 (7448_v1.1)",
                @"PVR 80040200 (7448_v2.0)",
                @"PVR 80040201 (7448_v2.1)",
                @"PVR 800c1100 (7410_v1.0)",
                @"PVR 800c1101 (7410_v1.1)",
                @"PVR 800c1102 (7410_v1.2)",
                @"PVR 800c1103 (7410_v1.3)",
                @"PVR 800c1104 (7410_v1.4)",
                @"PVR 80200010 (e500_v10)",
                @"PVR 80200010 (mpc8540_v10)",
                @"PVR 80200020 (e500_v20)",
                @"PVR 80200020 (mpc8540_v20)",
                @"PVR 80200020 (mpc8540_v21)",
                @"PVR 80200020 (mpc8541_v10)",
                @"PVR 80200020 (mpc8541_v11)",
                @"PVR 80200020 (mpc8541e_v10)",
                @"PVR 80200020 (mpc8541e_v11)",
                @"PVR 80210010 (e500v2_v10)",
                @"PVR 80210010 (mpc8543_v10)",
                @"PVR 80210010 (mpc8543e_v10)",
                @"PVR 80210010 (mpc8548_v10)",
                @"PVR 80210010 (mpc8548e_v10)",
                @"PVR 80210010 (mpc8555_v10)",
                @"PVR 80210010 (mpc8555e_v10)",
                @"PVR 80210010 (mpc8560_v10)",
                @"PVR 80210011 (mpc8543_v11)",
                @"PVR 80210011 (mpc8543e_v11)",
                @"PVR 80210011 (mpc8548_v11)",
                @"PVR 80210011 (mpc8548e_v11)",
                @"PVR 80210011 (mpc8555_v11)",
                @"PVR 80210011 (mpc8555e_v11)",
                @"PVR 80210020 (e500v2_v20)",
                @"PVR 80210020 (mpc8543_v20)",
                @"PVR 80210020 (mpc8543e_v20)",
                @"PVR 80210020 (mpc8545_v20)",
                @"PVR 80210020 (mpc8545e_v20)",
                @"PVR 80210020 (mpc8547e_v20)",
                @"PVR 80210020 (mpc8548_v20)",
                @"PVR 80210020 (mpc8548e_v20)",
                @"PVR 80210020 (mpc8560_v20)",
                @"PVR 80210021 (e500v2_v21)",
                @"PVR 80210021 (mpc8533_v10)",
                @"PVR 80210021 (mpc8533e_v10)",
                @"PVR 80210021 (mpc8543_v21)",
                @"PVR 80210021 (mpc8543e_v21)",
                @"PVR 80210021 (mpc8544_v10)",
                @"PVR 80210021 (mpc8544e_v10)",
                @"PVR 80210021 (mpc8545_v21)",
                @"PVR 80210021 (mpc8545e_v21)",
                @"PVR 80210021 (mpc8547e_v21)",
                @"PVR 80210021 (mpc8548_v21)",
                @"PVR 80210021 (mpc8548e_v21)",
                @"PVR 80210021 (mpc8560_v21)",
                @"PVR 80210022 (e500v2_v22)",
                @"PVR 80210022 (mpc8533_v11)",
                @"PVR 80210022 (mpc8533e_v11)",
                @"PVR 80210022 (mpc8544_v11)",
                @"PVR 80210022 (mpc8544e_v11)",
                @"PVR 80210022 (mpc8567)",
                @"PVR 80210022 (mpc8567e)",
                @"PVR 80210022 (mpc8568)",
                @"PVR 80210022 (mpc8568e)",
                @"PVR 80210030 (e500v2_v30)",
                @"PVR 80210030 (mpc8572)",
                @"PVR 80210030 (mpc8572e)",
                @"PVR 80230020 (e500mc)",
                @"PVR 80811010 (g2h4)",
                @"PVR 80811014 (g2hip4)",
                @"PVR 80820010 (g2le)",
                @"PVR 80821010 (g2gp)",
                @"PVR 80822010 (g2legp)",
                @"PVR 80822011 (g2legp1)",
                @"PVR 80822011 (mpc5200_v10)",
                @"PVR 80822011 (mpc5200_v11)",
                @"PVR 80822011 (mpc5200_v12)",
                @"PVR 80822011 (mpc5200b_v20)",
                @"PVR 80822011 (mpc5200b_v21)",
                @"PVR 80822013 (g2legp3)",
                @"PVR 81000000 (e200z5)",
                @"PVR 81120000 (e200z6)",
                @"PVR 90810010 (g2ls)",
                @"PVR a0822010 (g2lels)",
                @"apollo6",
                @"apollo7",
                @"apollo7pm",
                @"arthur",
                @"conan/doyle",
                @"default",
                @"e200",
                @"e300",
                @"e500",
                @"e500v1",
                @"e500v2",
                @"g3",
                @"g4",
                @"goldeneye",
                @"goldfinger",
                @"lonestar",
                @"mach5",
                @"max",
                @"mpc5200",
                @"mpc5200b",
                @"mpc52xx",
                @"mpc8240",
                @"mpc8241",
                @"mpc8245",
                @"mpc8247",
                @"mpc8248",
                @"mpc8250",
                @"mpc8250_hip3",
                @"mpc8250_hip4",
                @"mpc8255",
                @"mpc8255_hip3",
                @"mpc8255_hip4",
                @"mpc8260",
                @"mpc8260_hip3",
                @"mpc8260_hip4",
                @"mpc8264",
                @"mpc8264_hip3",
                @"mpc8264_hip4",
                @"mpc8265",
                @"mpc8265_hip3",
                @"mpc8265_hip4",
                @"mpc8266",
                @"mpc8266_hip3",
                @"mpc8266_hip4",
                @"mpc8270",
                @"mpc8271",
                @"mpc8272",
                @"mpc8275",
                @"mpc8280",
                @"mpc82xx",
                @"mpc8347",
                @"mpc8347a",
                @"mpc8347e",
                @"mpc8347ea",
                @"mpc8533",
                @"mpc8533e",
                @"mpc8540",
                @"mpc8541",
                @"mpc8541e",
                @"mpc8543",
                @"mpc8543e",
                @"mpc8544",
                @"mpc8544e",
                @"mpc8545",
                @"mpc8545e",
                @"mpc8547e",
                @"mpc8548",
                @"mpc8548e",
                @"mpc8555",
                @"mpc8555e",
                @"mpc8560",
                @"nitro",
                @"powerquicc-ii",
                @"ppc",
                @"ppc32",
                @"sirocco",
                @"stretch",
                @"typhoon",
                @"vaillant",
                @"vanilla",
                @"vger",
                @"x2vp50",
                @"x2vp7",
            ],
        @"ppc64":
            @[
                @"403",
                @"405",
                @"405cr",
                @"405gp",
                @"405gpe",
                @"440ep",
                @"460ex",
                @"601",
                @"601v",
                @"603e",
                @"603r",
                @"604e",
                @"740",
                @"7400",
                @"7410",
                @"7441",
                @"7445",
                @"7447",
                @"7447a",
                @"7448",
                @"745",
                @"7450",
                @"7451",
                @"7455",
                @"7457",
                @"7457a",
                @"750",
                @"750cl",
                @"750cx",
                @"750cxe",
                @"750fx",
                @"750gx",
                @"750l",
                @"755",
                @"970",
                @"970fx",
                @"970mp",
                @"Default",
                @"PVR 00010001 (601_v0)",
                @"PVR 00010002 (601_v2)",
                @"PVR 00030100 (603)",
                @"PVR 00040103 (604)",
                @"PVR 00050100 (602)",
                @"PVR 00060101 (603e_v1.1)",
                @"PVR 00060102 (603e_v1.2)",
                @"PVR 00060103 (603e_v1.3)",
                @"PVR 00060104 (603e_v1.4)",
                @"PVR 00060202 (603e_v2.2)",
                @"PVR 00060300 (603e_v3)",
                @"PVR 00060400 (603e_v4)",
                @"PVR 00060401 (603e_v4.1)",
                @"PVR 00070000 (603p)",
                @"PVR 00070100 (603e7v)",
                @"PVR 00070101 (603e7v1)",
                @"PVR 00070200 (603e7)",
                @"PVR 00070201 (603e7v2)",
                @"PVR 00071201 (603e7t)",
                @"PVR 00080100 (740_v1.0)",
                @"PVR 00080100 (740e)",
                @"PVR 00080100 (750_v1.0)",
                @"PVR 00080200 (740_v2.0)",
                @"PVR 00080200 (750_v2.0)",
                @"PVR 00080200 (750e)",
                @"PVR 00080201 (740_v2.1)",
                @"PVR 00080201 (750_v2.1)",
                @"PVR 00080202 (740_v2.2)",
                @"PVR 00080202 (750_v2.2)",
                @"PVR 00080300 (740_v3.0)",
                @"PVR 00080300 (750_v3.0)",
                @"PVR 00080301 (740_v3.1)",
                @"PVR 00080301 (750_v3.1)",
                @"PVR 00082100 (750cx_v1.0)",
                @"PVR 00082200 (750cx_v2.0)",
                @"PVR 00082201 (750cx_v2.1)",
                @"PVR 00082202 (750cx_v2.2)",
                @"PVR 00082211 (750cxe_v2.1)",
                @"PVR 00082212 (750cxe_v2.2)",
                @"PVR 00082213 (750cxe_v2.3)",
                @"PVR 00082214 (750cxe_v2.4)",
                @"PVR 00082310 (750cxe_v3.0)",
                @"PVR 00082311 (750cxe_v3.1)",
                @"PVR 00083100 (745_v1.0)",
                @"PVR 00083100 (755_v1.0)",
                @"PVR 00083101 (745_v1.1)",
                @"PVR 00083101 (755_v1.1)",
                @"PVR 00083200 (745_v2.0)",
                @"PVR 00083200 (755_v2.0)",
                @"PVR 00083201 (745_v2.1)",
                @"PVR 00083201 (755_v2.1)",
                @"PVR 00083202 (745_v2.2)",
                @"PVR 00083202 (755_v2.2)",
                @"PVR 00083203 (745_v2.3)",
                @"PVR 00083203 (755_v2.3)",
                @"PVR 00083204 (745_v2.4)",
                @"PVR 00083204 (755_v2.4)",
                @"PVR 00083205 (745_v2.5)",
                @"PVR 00083205 (755_v2.5)",
                @"PVR 00083206 (745_v2.6)",
                @"PVR 00083206 (755_v2.6)",
                @"PVR 00083207 (745_v2.7)",
                @"PVR 00083207 (755_v2.7)",
                @"PVR 00083208 (745_v2.8)",
                @"PVR 00083208 (755_v2.8)",
                @"PVR 00083214 (750cxe_v2.4b)",
                @"PVR 00083311 (750cxe_v3.1b)",
                @"PVR 00083410 (750cxr)",
                @"PVR 00087200 (750cl_v1.0)",
                @"PVR 00087210 (750cl_v2.0)",
                @"PVR 00088200 (750l_v2.0)",
                @"PVR 00088201 (750l_v2.1)",
                @"PVR 00088202 (750l_v2.2)",
                @"PVR 00088300 (750l_v3.0)",
                @"PVR 00088302 (750l_v3.2)",
                @"PVR 00090100 (604e_v1.0)",
                @"PVR 00090202 (604e_v2.2)",
                @"PVR 00090204 (604e_v2.4)",
                @"PVR 000a0101 (604r)",
                @"PVR 000c0100 (7400_v1.0)",
                @"PVR 000c0101 (7400_v1.1)",
                @"PVR 000c0200 (7400_v2.0)",
                @"PVR 000c0201 (7400_v2.1)",
                @"PVR 000c0202 (7400_v2.2)",
                @"PVR 000c0206 (7400_v2.6)",
                @"PVR 000c0207 (7400_v2.7)",
                @"PVR 000c0208 (7400_v2.8)",
                @"PVR 000c0209 (7400_v2.9)",
                @"PVR 00200011 (403ga)",
                @"PVR 00200100 (403gb)",
                @"PVR 00200200 (403gc)",
                @"PVR 00201400 (403gcx)",
                @"PVR 00210000 (401a1)",
                @"PVR 00220000 (401b2)",
                @"PVR 00220000 (iop480)",
                @"PVR 00230000 (401c2)",
                @"PVR 00240000 (401d2)",
                @"PVR 00250000 (401e2)",
                @"PVR 00260000 (401f2)",
                @"PVR 00270000 (401)",
                @"PVR 00270000 (401g2)",
                @"PVR 00390202 (970_v2.2)",
                @"PVR 00391100 (970fx_v1.0)",
                @"PVR 003b0201 (power5+_v2.1)",
                @"PVR 003c0200 (970fx_v2.0)",
                @"PVR 003c0201 (970fx_v2.1)",
                @"PVR 003c0300 (970fx_v3.0)",
                @"PVR 003c0301 (970fx_v3.1)",
                @"PVR 003f0203 (power7_v2.3)",
                @"PVR 00440100 (970mp_v1.0)",
                @"PVR 00440101 (970mp_v1.1)",
                @"PVR 004a0201 (power7+_v2.1)",
                @"PVR 004b0201 (power8e_v2.1)",
                @"PVR 004c0100 (power8nvl_v1.0)",
                @"PVR 004d0200 (power8_v2.0)",
                @"PVR 004e0100 (power9_v1.0)",
                @"PVR 004e1200 (power9_v2.0)",
                @"PVR 00800100 (power10_v1.0)",
                @"PVR 00800200 (power10_v2.0)",
                @"PVR 00810011 (g2)",
                @"PVR 00810100 (mpc603)",
                @"PVR 00810101 (g2hip3)",
                @"PVR 00830010 (e300c1)",
                @"PVR 00830010 (mpc8343)",
                @"PVR 00830010 (mpc8343a)",
                @"PVR 00830010 (mpc8343e)",
                @"PVR 00830010 (mpc8343ea)",
                @"PVR 00830010 (mpc8347ap)",
                @"PVR 00830010 (mpc8347at)",
                @"PVR 00830010 (mpc8347eap)",
                @"PVR 00830010 (mpc8347eat)",
                @"PVR 00830010 (mpc8347ep)",
                @"PVR 00830010 (mpc8347et)",
                @"PVR 00830010 (mpc8347p)",
                @"PVR 00830010 (mpc8347t)",
                @"PVR 00830010 (mpc8349)",
                @"PVR 00830010 (mpc8349a)",
                @"PVR 00830010 (mpc8349e)",
                @"PVR 00830010 (mpc8349ea)",
                @"PVR 00840010 (e300c2)",
                @"PVR 00850010 (e300c3)",
                @"PVR 00860010 (e300c4)",
                @"PVR 00860010 (mpc8377)",
                @"PVR 00860010 (mpc8377e)",
                @"PVR 00860010 (mpc8378)",
                @"PVR 00860010 (mpc8378e)",
                @"PVR 00860010 (mpc8379)",
                @"PVR 00860010 (mpc8379e)",
                @"PVR 10080000 (740p)",
                @"PVR 10080000 (750p)",
                @"PVR 10100000 (cobra)",
                @"PVR 130218a4 (460exb)",
                @"PVR 200008d0 (440epx)",
                @"PVR 20010000 (405d2)",
                @"PVR 20010820 (x2vp4)",
                @"PVR 20010860 (x2vp20)",
                @"PVR 40110000 (405gpa)",
                @"PVR 40110040 (405gpb)",
                @"PVR 40110041 (405cra)",
                @"PVR 40110082 (405gpc)",
                @"PVR 401100c4 (405gpd)",
                @"PVR 401100c5 (405crb)",
                @"PVR 40110145 (405crc)",
                @"PVR 40310000 (stb03)",
                @"PVR 40b10000 (npe4gs3)",
                @"PVR 414100c0 (npe405h)",
                @"PVR 41410140 (npe405h2)",
                @"PVR 41511460 (405ez)",
                @"PVR 416100c0 (npe405l)",
                @"PVR 41810000 (405d4)",
                @"PVR 41810000 (stb04)",
                @"PVR 41f10000 (405lp)",
                @"PVR 42221850 (440epa)",
                @"PVR 422218d3 (440epb)",
                @"PVR 50910951 (405gpr)",
                @"PVR 51210950 (405ep)",
                @"PVR 51510950 (stb25)",
                @"PVR 70000100 (750fx_v1.0)",
                @"PVR 70000200 (750fx_v2.0)",
                @"PVR 70000201 (750fx_v2.1)",
                @"PVR 70000202 (750fx_v2.2)",
                @"PVR 70000203 (750fl)",
                @"PVR 70000203 (750fx_v2.3)",
                @"PVR 70020100 (750gx_v1.0)",
                @"PVR 70020101 (750gx_v1.1)",
                @"PVR 70020102 (750gl)",
                @"PVR 70020102 (750gx_v1.2)",
                @"PVR 7ff21910 (440-xilinx)",
                @"PVR 7ff21910 (440-xilinx-w-dfpu)",
                @"PVR 80000100 (7450_v1.0)",
                @"PVR 80000101 (7450_v1.1)",
                @"PVR 80000102 (7450_v1.2)",
                @"PVR 80000200 (7450_v2.0)",
                @"PVR 80000201 (7441_v2.1)",
                @"PVR 80000201 (7450_v2.1)",
                @"PVR 80000203 (7441_v2.3)",
                @"PVR 80000203 (7451_v2.3)",
                @"PVR 80000210 (7441_v2.10)",
                @"PVR 80000210 (7451_v2.10)",
                @"PVR 80010100 (7445_v1.0)",
                @"PVR 80010100 (7455_v1.0)",
                @"PVR 80010201 (7445_v2.1)",
                @"PVR 80010201 (7455_v2.1)",
                @"PVR 80010302 (7445_v3.2)",
                @"PVR 80010302 (7455_v3.2)",
                @"PVR 80010303 (7445_v3.3)",
                @"PVR 80010303 (7455_v3.3)",
                @"PVR 80010304 (7445_v3.4)",
                @"PVR 80010304 (7455_v3.4)",
                @"PVR 80020100 (7447_v1.0)",
                @"PVR 80020100 (7457_v1.0)",
                @"PVR 80020101 (7447_v1.1)",
                @"PVR 80020101 (7457_v1.1)",
                @"PVR 80020102 (7457_v1.2)",
                @"PVR 80030100 (7447a_v1.0)",
                @"PVR 80030100 (7457a_v1.0)",
                @"PVR 80030101 (7447a_v1.1)",
                @"PVR 80030101 (7457a_v1.1)",
                @"PVR 80030102 (7447a_v1.2)",
                @"PVR 80030102 (7457a_v1.2)",
                @"PVR 80040010 (e600)",
                @"PVR 80040010 (mpc8610)",
                @"PVR 80040010 (mpc8641)",
                @"PVR 80040010 (mpc8641d)",
                @"PVR 80040100 (7448_v1.0)",
                @"PVR 80040101 (7448_v1.1)",
                @"PVR 80040200 (7448_v2.0)",
                @"PVR 80040201 (7448_v2.1)",
                @"PVR 800c1100 (7410_v1.0)",
                @"PVR 800c1101 (7410_v1.1)",
                @"PVR 800c1102 (7410_v1.2)",
                @"PVR 800c1103 (7410_v1.3)",
                @"PVR 800c1104 (7410_v1.4)",
                @"PVR 80200010 (e500_v10)",
                @"PVR 80200010 (mpc8540_v10)",
                @"PVR 80200020 (e500_v20)",
                @"PVR 80200020 (mpc8540_v20)",
                @"PVR 80200020 (mpc8540_v21)",
                @"PVR 80200020 (mpc8541_v10)",
                @"PVR 80200020 (mpc8541_v11)",
                @"PVR 80200020 (mpc8541e_v10)",
                @"PVR 80200020 (mpc8541e_v11)",
                @"PVR 80210010 (e500v2_v10)",
                @"PVR 80210010 (mpc8543_v10)",
                @"PVR 80210010 (mpc8543e_v10)",
                @"PVR 80210010 (mpc8548_v10)",
                @"PVR 80210010 (mpc8548e_v10)",
                @"PVR 80210010 (mpc8555_v10)",
                @"PVR 80210010 (mpc8555e_v10)",
                @"PVR 80210010 (mpc8560_v10)",
                @"PVR 80210011 (mpc8543_v11)",
                @"PVR 80210011 (mpc8543e_v11)",
                @"PVR 80210011 (mpc8548_v11)",
                @"PVR 80210011 (mpc8548e_v11)",
                @"PVR 80210011 (mpc8555_v11)",
                @"PVR 80210011 (mpc8555e_v11)",
                @"PVR 80210020 (e500v2_v20)",
                @"PVR 80210020 (mpc8543_v20)",
                @"PVR 80210020 (mpc8543e_v20)",
                @"PVR 80210020 (mpc8545_v20)",
                @"PVR 80210020 (mpc8545e_v20)",
                @"PVR 80210020 (mpc8547e_v20)",
                @"PVR 80210020 (mpc8548_v20)",
                @"PVR 80210020 (mpc8548e_v20)",
                @"PVR 80210020 (mpc8560_v20)",
                @"PVR 80210021 (e500v2_v21)",
                @"PVR 80210021 (mpc8533_v10)",
                @"PVR 80210021 (mpc8533e_v10)",
                @"PVR 80210021 (mpc8543_v21)",
                @"PVR 80210021 (mpc8543e_v21)",
                @"PVR 80210021 (mpc8544_v10)",
                @"PVR 80210021 (mpc8544e_v10)",
                @"PVR 80210021 (mpc8545_v21)",
                @"PVR 80210021 (mpc8545e_v21)",
                @"PVR 80210021 (mpc8547e_v21)",
                @"PVR 80210021 (mpc8548_v21)",
                @"PVR 80210021 (mpc8548e_v21)",
                @"PVR 80210021 (mpc8560_v21)",
                @"PVR 80210022 (e500v2_v22)",
                @"PVR 80210022 (mpc8533_v11)",
                @"PVR 80210022 (mpc8533e_v11)",
                @"PVR 80210022 (mpc8544_v11)",
                @"PVR 80210022 (mpc8544e_v11)",
                @"PVR 80210022 (mpc8567)",
                @"PVR 80210022 (mpc8567e)",
                @"PVR 80210022 (mpc8568)",
                @"PVR 80210022 (mpc8568e)",
                @"PVR 80210030 (e500v2_v30)",
                @"PVR 80210030 (mpc8572)",
                @"PVR 80210030 (mpc8572e)",
                @"PVR 80230020 (e500mc)",
                @"PVR 80240020 (e5500)",
                @"PVR 80400020 (e6500)",
                @"PVR 80811010 (g2h4)",
                @"PVR 80811014 (g2hip4)",
                @"PVR 80820010 (g2le)",
                @"PVR 80821010 (g2gp)",
                @"PVR 80822010 (g2legp)",
                @"PVR 80822011 (g2legp1)",
                @"PVR 80822011 (mpc5200_v10)",
                @"PVR 80822011 (mpc5200_v11)",
                @"PVR 80822011 (mpc5200_v12)",
                @"PVR 80822011 (mpc5200b_v20)",
                @"PVR 80822011 (mpc5200b_v21)",
                @"PVR 80822013 (g2legp3)",
                @"PVR 81000000 (e200z5)",
                @"PVR 81120000 (e200z6)",
                @"PVR 90810010 (g2ls)",
                @"PVR a0822010 (g2lels)",
                @"apollo6",
                @"apollo7",
                @"apollo7pm",
                @"arthur",
                @"conan/doyle",
                @"default",
                @"e200",
                @"e300",
                @"e500",
                @"e500v1",
                @"e500v2",
                @"g3",
                @"g4",
                @"goldeneye",
                @"goldfinger",
                @"lonestar",
                @"mach5",
                @"max",
                @"mpc5200",
                @"mpc5200b",
                @"mpc52xx",
                @"mpc8240",
                @"mpc8241",
                @"mpc8245",
                @"mpc8247",
                @"mpc8248",
                @"mpc8250",
                @"mpc8250_hip3",
                @"mpc8250_hip4",
                @"mpc8255",
                @"mpc8255_hip3",
                @"mpc8255_hip4",
                @"mpc8260",
                @"mpc8260_hip3",
                @"mpc8260_hip4",
                @"mpc8264",
                @"mpc8264_hip3",
                @"mpc8264_hip4",
                @"mpc8265",
                @"mpc8265_hip3",
                @"mpc8265_hip4",
                @"mpc8266",
                @"mpc8266_hip3",
                @"mpc8266_hip4",
                @"mpc8270",
                @"mpc8271",
                @"mpc8272",
                @"mpc8275",
                @"mpc8280",
                @"mpc82xx",
                @"mpc8347",
                @"mpc8347a",
                @"mpc8347e",
                @"mpc8347ea",
                @"mpc8533",
                @"mpc8533e",
                @"mpc8540",
                @"mpc8541",
                @"mpc8541e",
                @"mpc8543",
                @"mpc8543e",
                @"mpc8544",
                @"mpc8544e",
                @"mpc8545",
                @"mpc8545e",
                @"mpc8547e",
                @"mpc8548",
                @"mpc8548e",
                @"mpc8555",
                @"mpc8555e",
                @"mpc8560",
                @"nitro",
                @"power10",
                @"power5+",
                @"power5gs",
                @"power7",
                @"power7+",
                @"power8",
                @"power8e",
                @"power8nvl",
                @"power9",
                @"powerquicc-ii",
                @"ppc",
                @"ppc32",
                @"ppc64",
                @"sirocco",
                @"stretch",
                @"typhoon",
                @"vaillant",
                @"vanilla",
                @"vger",
                @"x2vp50",
                @"x2vp7",
            ],
        @"riscv32":
            @[
                @"Default",
                @"lowrisc-ibex",
                @"rv32",
                @"sifive-e31",
                @"sifive-e34",
                @"sifive-u34",
            ],
        @"riscv64":
            @[
                @"Default",
                @"rv64",
                @"shakti-c",
                @"sifive-e51",
                @"sifive-u54",
            ],
        @"rx":
            @[
                @"Default",
                @"rx62n-rx-cpu",
            ],
        @"s390x":
            @[
                @"Default",
                @"Enables all features supported by the accelerator in the current host (max)",
                @"IBM 3931 GA1 (migration-safe) (gen16a)",
                @"IBM 3931 GA1 (static, migration-safe) (gen16a-base)",
                @"IBM 3932 GA1 (migration-safe) (gen16b)",
                @"IBM 3932 GA1 (static, migration-safe) (gen16b-base)",
                @"IBM System z10 BC GA1 (migration-safe) (z10BC)",
                @"IBM System z10 BC GA1 (static, migration-safe) (z10BC-base)",
                @"IBM System z10 BC GA2 (migration-safe) (z10BC.2)",
                @"IBM System z10 BC GA2 (static, migration-safe) (z10BC.2-base)",
                @"IBM System z10 EC GA1 (migration-safe) (z10EC)",
                @"IBM System z10 EC GA1 (static, migration-safe) (z10EC-base)",
                @"IBM System z10 EC GA2 (migration-safe) (z10EC.2)",
                @"IBM System z10 EC GA2 (static, migration-safe) (z10EC.2-base)",
                @"IBM System z10 EC GA3 (migration-safe) (z10EC.3)",
                @"IBM System z10 EC GA3 (static, migration-safe) (z10EC.3-base)",
                @"IBM System z9 BC GA1 (migration-safe) (z9BC)",
                @"IBM System z9 BC GA1 (static, migration-safe) (z9BC-base)",
                @"IBM System z9 BC GA2 (migration-safe) (z9BC.2)",
                @"IBM System z9 BC GA2 (static, migration-safe) (z9BC.2-base)",
                @"IBM System z9 EC GA1 (migration-safe) (z9EC)",
                @"IBM System z9 EC GA1 (static, migration-safe) (z9EC-base)",
                @"IBM System z9 EC GA2 (migration-safe) (z9EC.2)",
                @"IBM System z9 EC GA2 (static, migration-safe) (z9EC.2-base)",
                @"IBM System z9 EC GA3 (migration-safe) (z9EC.3)",
                @"IBM System z9 EC GA3 (static, migration-safe) (z9EC.3-base)",
                @"IBM z13 GA1 (migration-safe) (z13)",
                @"IBM z13 GA1 (static, migration-safe) (z13-base)",
                @"IBM z13 GA2 (migration-safe) (z13.2)",
                @"IBM z13 GA2 (static, migration-safe) (z13.2-base)",
                @"IBM z13s GA1 (migration-safe) (z13s)",
                @"IBM z13s GA1 (static, migration-safe) (z13s-base)",
                @"IBM z14 GA1 (migration-safe) (z14)",
                @"IBM z14 GA1 (static, migration-safe) (z14-base)",
                @"IBM z14 GA2 (migration-safe) (z14.2)",
                @"IBM z14 GA2 (static, migration-safe) (z14.2-base)",
                @"IBM z14 Model ZR1 GA1 (migration-safe) (z14ZR1)",
                @"IBM z14 Model ZR1 GA1 (static, migration-safe) (z14ZR1-base)",
                @"IBM z15 T01 GA1 (migration-safe) (gen15a)",
                @"IBM z15 T01 GA1 (static, migration-safe) (gen15a-base)",
                @"IBM z15 T02 GA1 (migration-safe) (gen15b)",
                @"IBM z15 T02 GA1 (static, migration-safe) (gen15b-base)",
                @"IBM zEnterprise 114 GA1 (migration-safe) (z114)",
                @"IBM zEnterprise 114 GA1 (static, migration-safe) (z114-base)",
                @"IBM zEnterprise 196 GA1 (migration-safe) (z196)",
                @"IBM zEnterprise 196 GA1 (static, migration-safe) (z196-base)",
                @"IBM zEnterprise 196 GA2 (migration-safe) (z196.2)",
                @"IBM zEnterprise 196 GA2 (static, migration-safe) (z196.2-base)",
                @"IBM zEnterprise BC12 GA1 (migration-safe) (zBC12)",
                @"IBM zEnterprise BC12 GA1 (static, migration-safe) (zBC12-base)",
                @"IBM zEnterprise EC12 GA1 (migration-safe) (zEC12)",
                @"IBM zEnterprise EC12 GA1 (static, migration-safe) (zEC12-base)",
                @"IBM zEnterprise EC12 GA2 (migration-safe) (zEC12.2)",
                @"IBM zEnterprise EC12 GA2 (static, migration-safe) (zEC12.2-base)",
                @"IBM zSeries 800 GA1 (migration-safe) (z800)",
                @"IBM zSeries 800 GA1 (static, migration-safe) (z800-base)",
                @"IBM zSeries 880 GA1 (migration-safe) (z890)",
                @"IBM zSeries 880 GA1 (static, migration-safe) (z890-base)",
                @"IBM zSeries 880 GA2 (migration-safe) (z890.2)",
                @"IBM zSeries 880 GA2 (static, migration-safe) (z890.2-base)",
                @"IBM zSeries 880 GA3 (migration-safe) (z890.3)",
                @"IBM zSeries 880 GA3 (static, migration-safe) (z890.3-base)",
                @"IBM zSeries 900 GA1 (migration-safe) (z900)",
                @"IBM zSeries 900 GA1 (static, migration-safe) (z900-base)",
                @"IBM zSeries 900 GA2 (migration-safe) (z900.2)",
                @"IBM zSeries 900 GA2 (static, migration-safe) (z900.2-base)",
                @"IBM zSeries 900 GA3 (migration-safe) (z900.3)",
                @"IBM zSeries 900 GA3 (static, migration-safe) (z900.3-base)",
                @"IBM zSeries 990 GA1 (migration-safe) (z990)",
                @"IBM zSeries 990 GA1 (static, migration-safe) (z990-base)",
                @"IBM zSeries 990 GA2 (migration-safe) (z990.2)",
                @"IBM zSeries 990 GA2 (static, migration-safe) (z990.2-base)",
                @"IBM zSeries 990 GA3 (migration-safe) (z990.3)",
                @"IBM zSeries 990 GA3 (static, migration-safe) (z990.3-base)",
                @"IBM zSeries 990 GA4 (migration-safe) (z990.4)",
                @"IBM zSeries 990 GA4 (static, migration-safe) (z990.4-base)",
                @"IBM zSeries 990 GA5 (migration-safe) (z990.5)",
                @"IBM zSeries 990 GA5 (static, migration-safe) (z990.5-base)",
            ],
        @"sh4":
            @[
                @"Default",
                @"sh7751r",
                @"sh7785",
            ],
        @"sh4eb":
            @[
                @"Default",
                @"sh7751r",
                @"sh7785",
            ],
        @"sparc":
            @[
                @"Default",
                @"Fujitsu MB86907",
                @"LEON2",
                @"LEON3",
                @"TI MicroSparc I",
                @"TI MicroSparc II",
                @"TI MicroSparc IIep",
                @"TI SuperSparc 40",
                @"TI SuperSparc 50",
                @"TI SuperSparc 51",
                @"TI SuperSparc 60",
                @"TI SuperSparc 61",
                @"TI SuperSparc II",
            ],
        @"sparc64":
            @[
                @"Default",
                @"Fujitsu Sparc64 III",
                @"Fujitsu Sparc64 IV",
                @"Fujitsu Sparc64 V",
                @"NEC UltraSparc I",
                @"Sun UltraSparc III",
                @"Sun UltraSparc III Cu",
                @"Sun UltraSparc IIIi",
                @"Sun UltraSparc IIIi+",
                @"Sun UltraSparc IV",
                @"Sun UltraSparc IV+",
                @"Sun UltraSparc T1",
                @"Sun UltraSparc T2",
                @"TI UltraSparc I",
                @"TI UltraSparc II",
                @"TI UltraSparc IIe",
                @"TI UltraSparc IIi",
            ],
        @"tricore":
            @[
                @"Default",
                @"tc1796",
                @"tc1797",
                @"tc27x",
            ],
        @"x86_64":
            @[
                @"486",
                @"486-v1",
                @"AMD EPYC Processor (EPYC-v1)",
                @"AMD EPYC Processor (EPYC-v3)",
                @"AMD EPYC Processor (with IBPB) (EPYC-v2)",
                @"AMD EPYC-Milan Processor (EPYC-Milan-v1)",
                @"AMD EPYC-Rome Processor (EPYC-Rome-v1)",
                @"AMD EPYC-Rome Processor (EPYC-Rome-v2)",
                @"AMD Opteron 22xx (Gen 2 Class Opteron) (Opteron_G2-v1)",
                @"AMD Opteron 23xx (Gen 3 Class Opteron) (Opteron_G3-v1)",
                @"AMD Opteron 240 (Gen 1 Class Opteron) (Opteron_G1-v1)",
                @"AMD Opteron 62xx class CPU (Opteron_G4-v1)",
                @"AMD Opteron 63xx class CPU (Opteron_G5-v1)",
                @"AMD Phenom(tm) 9550 Quad-Core Processor (phenom-v1)",
                @"Broadwell",
                @"Broadwell-IBRS",
                @"Broadwell-noTSX",
                @"Broadwell-noTSX-IBRS",
                @"Cascadelake-Server",
                @"Cascadelake-Server-noTSX",
                @"Common 32-bit KVM processor (kvm32-v1)",
                @"Common KVM processor (kvm64-v1)",
                @"Conroe",
                @"Cooperlake",
                @"Default",
                @"Denverton",
                @"Dhyana",
                @"EPYC",
                @"EPYC-IBPB",
                @"EPYC-Milan",
                @"EPYC-Rome",
                @"Enables all features supported by the accelerator in the current host (max)",
                @"Genuine Intel(R) CPU T2600 @ 2.16GHz (coreduo-v1)",
                @"Haswell",
                @"Haswell-IBRS",
                @"Haswell-noTSX",
                @"Haswell-noTSX-IBRS",
                @"Hygon Dhyana Processor (Dhyana-v1)",
                @"Hygon Dhyana Processor [XSAVES] (Dhyana-v2)",
                @"Icelake-Client",
                @"Icelake-Client-noTSX",
                @"Icelake-Server",
                @"Icelake-Server-noTSX",
                @"Intel Atom Processor (Denverton) (Denverton-v1)",
                @"Intel Atom Processor (Denverton) [XSAVES, no MPX, no MONITOR] (Denverton-v3)",
                @"Intel Atom Processor (Denverton) [no MPX, no MONITOR] (Denverton-v2)",
                @"Intel Atom Processor (SnowRidge) (Snowridge-v1)",
                @"Intel Atom Processor (Snowridge, no MPX) (Snowridge-v2)",
                @"Intel Atom Processor (Snowridge, no MPX) [XSAVES, no MPX] (Snowridge-v3)",
                @"Intel Atom Processor (Snowridge, no MPX) [no split lock detect, no core-capability] (Snowridge-v4)",
                @"Intel Celeron_4x0 (Conroe/Merom Class Core 2) (Conroe-v1)",
                @"Intel Core 2 Duo P9xxx (Penryn Class Core 2) (Penryn-v1)",
                @"Intel Core Processor (Broadwell) (Broadwell-v1)",
                @"Intel Core Processor (Broadwell, IBRS) (Broadwell-v3)",
                @"Intel Core Processor (Broadwell, no TSX) (Broadwell-v2)",
                @"Intel Core Processor (Broadwell, no TSX, IBRS) (Broadwell-v4)",
                @"Intel Core Processor (Haswell) (Haswell-v1)",
                @"Intel Core Processor (Haswell, IBRS) (Haswell-v3)",
                @"Intel Core Processor (Haswell, no TSX) (Haswell-v2)",
                @"Intel Core Processor (Haswell, no TSX, IBRS) (Haswell-v4)",
                @"Intel Core Processor (Icelake) [deprecated] (Icelake-Client-v1)",
                @"Intel Core Processor (Icelake) [no TSX, XSAVES, deprecated] (Icelake-Client-v3)",
                @"Intel Core Processor (Icelake) [no TSX, deprecated] (Icelake-Client-v2)",
                @"Intel Core Processor (Skylake) (Skylake-Client-v1)",
                @"Intel Core Processor (Skylake, IBRS) (Skylake-Client-v2)",
                @"Intel Core Processor (Skylake, IBRS, no TSX) (Skylake-Client-v3)",
                @"Intel Core Processor (Skylake, IBRS, no TSX) [IBRS, XSAVES, no TSX] (Skylake-Client-v4)",
                @"Intel Core i7 9xx (Nehalem Class Core i7) (Nehalem-v1)",
                @"Intel Core i7 9xx (Nehalem Core i7, IBRS update) (Nehalem-v2)",
                @"Intel Xeon E3-12xx v2 (Ivy Bridge) (IvyBridge-v1)",
                @"Intel Xeon E3-12xx v2 (Ivy Bridge, IBRS) (IvyBridge-v2)",
                @"Intel Xeon E312xx (Sandy Bridge) (SandyBridge-v1)",
                @"Intel Xeon E312xx (Sandy Bridge, IBRS update) (SandyBridge-v2)",
                @"Intel Xeon Phi Processor (Knights Mill) (KnightsMill-v1)",
                @"Intel Xeon Processor (Cascadelake) (Cascadelake-Server-v1)",
                @"Intel Xeon Processor (Cascadelake) [ARCH_CAPABILITIES, EPT switching, XSAVES, no TSX] (Cascadelake-Server-v5)",
                @"Intel Xeon Processor (Cascadelake) [ARCH_CAPABILITIES, no TSX] (Cascadelake-Server-v3)",
                @"Intel Xeon Processor (Cascadelake) [ARCH_CAPABILITIES, no TSX] (Cascadelake-Server-v4)",
                @"Intel Xeon Processor (Cascadelake) [ARCH_CAPABILITIES] (Cascadelake-Server-v2)",
                @"Intel Xeon Processor (Cooperlake) (Cooperlake-v1)",
                @"Intel Xeon Processor (Cooperlake) [XSAVES] (Cooperlake-v2)",
                @"Intel Xeon Processor (Icelake) (Icelake-Server-v1)",
                @"Intel Xeon Processor (Icelake) (Icelake-Server-v3)",
                @"Intel Xeon Processor (Icelake) (Icelake-Server-v4)",
                @"Intel Xeon Processor (Icelake) [XSAVES] (Icelake-Server-v5)",
                @"Intel Xeon Processor (Icelake) [no TSX] (Icelake-Server-v2)",
                @"Intel Xeon Processor (Skylake) (Skylake-Server-v1)",
                @"Intel Xeon Processor (Skylake, IBRS) (Skylake-Server-v2)",
                @"Intel Xeon Processor (Skylake, IBRS, no TSX) (Skylake-Server-v3)",
                @"Intel Xeon Processor (Skylake, IBRS, no TSX) (Skylake-Server-v4)",
                @"Intel Xeon Processor (Skylake, IBRS, no TSX) [IBRS, XSAVES, EPT switching, no TSX] (Skylake-Server-v5)",
                @"Intel(R) Atom(TM) CPU N270 @ 1.60GHz (n270-v1)",
                @"Intel(R) Core(TM)2 Duo CPU T7700 @ 2.40GHz (core2duo-v1)",
                @"IvyBridge",
                @"IvyBridge-IBRS",
                @"KnightsMill",
                @"Nehalem",
                @"Nehalem-IBRS",
                @"Opteron_G1",
                @"Opteron_G2",
                @"Opteron_G3",
                @"Opteron_G4",
                @"Opteron_G5",
                @"Penryn",
                @"QEMU Virtual CPU version 2.5+ (athlon-v1)",
                @"QEMU Virtual CPU version 2.5+ (qemu32-v1)",
                @"QEMU Virtual CPU version 2.5+ (qemu64-v1)",
                @"SandyBridge",
                @"SandyBridge-IBRS",
                @"Skylake-Client",
                @"Skylake-Client-IBRS",
                @"Skylake-Client-noTSX-IBRS",
                @"Skylake-Server",
                @"Skylake-Server-IBRS",
                @"Skylake-Server-noTSX-IBRS",
                @"Snowridge",
                @"Westmere",
                @"Westmere E56xx/L56xx/X56xx (IBRS update) (Westmere-v2)",
                @"Westmere E56xx/L56xx/X56xx (Nehalem-C) (Westmere-v1)",
                @"Westmere-IBRS",
                @"athlon",
                @"base CPU model type with no features enabled (base)",
                @"core2duo",
                @"coreduo",
                @"kvm32",
                @"kvm64",
                @"n270",
                @"pentium",
                @"pentium-v1",
                @"pentium2",
                @"pentium2-v1",
                @"pentium3",
                @"pentium3-v1",
                @"phenom",
                @"qemu32",
                @"qemu64",
            ],
        @"xtensa":
            @[
                @"Default",
                @"dc232b",
                @"dc233c",
                @"de212",
                @"de233_fpu",
                @"dsp3400",
                @"sample_controller",
                @"test_mmuhifi_c3",
            ],
        @"xtensaeb":
            @[
                @"Default",
                @"fsf",
                @"test_kc705_be",
            ],
    }[architecture];
}

+ (NSArray<NSString *>*)supportedCpuFlagsForArchitecture:(NSString *)architecture {
    return @{
        @"alpha":
            @[
            ],
        @"arm":
            @[
            ],
        @"aarch64":
            @[
            ],
        @"avr":
            @[
            ],
        @"cris":
            @[
            ],
        @"hppa":
            @[
            ],
        @"i386":
            @[
                @"3dnow",
                @"3dnowext",
                @"3dnowprefetch",
                @"abm",
                @"ace2",
                @"ace2-en",
                @"acpi",
                @"adx",
                @"aes",
                @"amd-no-ssb",
                @"amd-ssbd",
                @"amd-stibp",
                @"apic",
                @"arat",
                @"arch-capabilities",
                @"avic",
                @"avx",
                @"avx-vnni",
                @"avx2",
                @"avx512-4fmaps",
                @"avx512-4vnniw",
                @"avx512-bf16",
                @"avx512-fp16",
                @"avx512-vp2intersect",
                @"avx512-vpopcntdq",
                @"avx512bitalg",
                @"avx512bw",
                @"avx512cd",
                @"avx512dq",
                @"avx512er",
                @"avx512f",
                @"avx512ifma",
                @"avx512pf",
                @"avx512vbmi",
                @"avx512vbmi2",
                @"avx512vl",
                @"avx512vnni",
                @"bmi1",
                @"bmi2",
                @"bus-lock-detect",
                @"cid",
                @"cldemote",
                @"clflush",
                @"clflushopt",
                @"clwb",
                @"clzero",
                @"cmov",
                @"cmp-legacy",
                @"core-capability",
                @"cr8legacy",
                @"cx16",
                @"cx8",
                @"dca",
                @"de",
                @"decodeassists",
                @"ds",
                @"ds-cpl",
                @"dtes64",
                @"erms",
                @"est",
                @"extapic",
                @"f16c",
                @"flushbyasid",
                @"fma",
                @"fma4",
                @"fpu",
                @"fsgsbase",
                @"fsrm",
                @"full-width-write",
                @"fxsr",
                @"fxsr-opt",
                @"gfni",
                @"hle",
                @"ht",
                @"hypervisor",
                @"ia64",
                @"ibpb",
                @"ibrs",
                @"ibrs-all",
                @"ibs",
                @"intel-pt",
                @"intel-pt-lip",
                @"invpcid",
                @"invtsc",
                @"kvm-asyncpf",
                @"kvm-asyncpf-int",
                @"kvm-hint-dedicated",
                @"kvm-mmu",
                @"kvm-msi-ext-dest-id",
                @"kvm-nopiodelay",
                @"kvm-poll-control",
                @"kvm-pv-eoi",
                @"kvm-pv-ipi",
                @"kvm-pv-sched-yield",
                @"kvm-pv-tlb-flush",
                @"kvm-pv-unhalt",
                @"kvm-steal-time",
                @"kvmclock",
                @"kvmclock-stable-bit",
                @"la57",
                @"lahf-lm",
                @"lbrv",
                @"lm",
                @"lwp",
                @"mca",
                @"mce",
                @"md-clear",
                @"mds-no",
                @"misalignsse",
                @"mmx",
                @"mmxext",
                @"monitor",
                @"movbe",
                @"movdir64b",
                @"movdiri",
                @"mpx",
                @"msr",
                @"mtrr",
                @"nodeid-msr",
                @"npt",
                @"nrip-save",
                @"nx",
                @"osvw",
                @"pae",
                @"pat",
                @"pause-filter",
                @"pbe",
                @"pcid",
                @"pclmulqdq",
                @"pcommit",
                @"pdcm",
                @"pdpe1gb",
                @"perfctr-core",
                @"perfctr-nb",
                @"pfthreshold",
                @"pge",
                @"phe",
                @"phe-en",
                @"pks",
                @"pku",
                @"pmm",
                @"pmm-en",
                @"pn",
                @"pni",
                @"popcnt",
                @"pschange-mc-no",
                @"pse",
                @"pse36",
                @"rdctl-no",
                @"rdpid",
                @"rdrand",
                @"rdseed",
                @"rdtscp",
                @"rsba",
                @"rtm",
                @"sep",
                @"serialize",
                @"sgx",
                @"sgx-debug",
                @"sgx-exinfo",
                @"sgx-kss",
                @"sgx-mode64",
                @"sgx-provisionkey",
                @"sgx-tokenkey",
                @"sgx1",
                @"sgx2",
                @"sgxlc",
                @"sha-ni",
                @"skinit",
                @"skip-l1dfl-vmentry",
                @"smap",
                @"smep",
                @"smx",
                @"spec-ctrl",
                @"split-lock-detect",
                @"ss",
                @"ssb-no",
                @"ssbd",
                @"sse",
                @"sse2",
                @"sse4.1",
                @"sse4.2",
                @"sse4a",
                @"ssse3",
                @"stibp",
                @"svm",
                @"svm-lock",
                @"svme-addr-chk",
                @"syscall",
                @"taa-no",
                @"tbm",
                @"tce",
                @"tm",
                @"tm2",
                @"topoext",
                @"tsc",
                @"tsc-adjust",
                @"tsc-deadline",
                @"tsc-scale",
                @"tsx-ctrl",
                @"tsx-ldtrk",
                @"umip",
                @"v-vmsave-vmload",
                @"vaes",
                @"vgif",
                @"virt-ssbd",
                @"vmcb-clean",
                @"vme",
                @"vmx",
                @"vmx-activity-hlt",
                @"vmx-activity-shutdown",
                @"vmx-activity-wait-sipi",
                @"vmx-apicv-register",
                @"vmx-apicv-vid",
                @"vmx-apicv-x2apic",
                @"vmx-apicv-xapic",
                @"vmx-cr3-load-noexit",
                @"vmx-cr3-store-noexit",
                @"vmx-cr8-load-exit",
                @"vmx-cr8-store-exit",
                @"vmx-desc-exit",
                @"vmx-encls-exit",
                @"vmx-entry-ia32e-mode",
                @"vmx-entry-load-bndcfgs",
                @"vmx-entry-load-efer",
                @"vmx-entry-load-pat",
                @"vmx-entry-load-perf-global-ctrl",
                @"vmx-entry-load-pkrs",
                @"vmx-entry-load-rtit-ctl",
                @"vmx-entry-noload-debugctl",
                @"vmx-ept",
                @"vmx-ept-1gb",
                @"vmx-ept-2mb",
                @"vmx-ept-advanced-exitinfo",
                @"vmx-ept-execonly",
                @"vmx-eptad",
                @"vmx-eptp-switching",
                @"vmx-exit-ack-intr",
                @"vmx-exit-clear-bndcfgs",
                @"vmx-exit-clear-rtit-ctl",
                @"vmx-exit-load-efer",
                @"vmx-exit-load-pat",
                @"vmx-exit-load-perf-global-ctrl",
                @"vmx-exit-load-pkrs",
                @"vmx-exit-nosave-debugctl",
                @"vmx-exit-save-efer",
                @"vmx-exit-save-pat",
                @"vmx-exit-save-preemption-timer",
                @"vmx-flexpriority",
                @"vmx-hlt-exit",
                @"vmx-ins-outs",
                @"vmx-intr-exit",
                @"vmx-invept",
                @"vmx-invept-all-context",
                @"vmx-invept-single-context",
                @"vmx-invept-single-context-noglobals",
                @"vmx-invlpg-exit",
                @"vmx-invpcid-exit",
                @"vmx-invvpid",
                @"vmx-invvpid-all-context",
                @"vmx-invvpid-single-addr",
                @"vmx-io-bitmap",
                @"vmx-io-exit",
                @"vmx-monitor-exit",
                @"vmx-movdr-exit",
                @"vmx-msr-bitmap",
                @"vmx-mtf",
                @"vmx-mwait-exit",
                @"vmx-nmi-exit",
                @"vmx-page-walk-4",
                @"vmx-page-walk-5",
                @"vmx-pause-exit",
                @"vmx-ple",
                @"vmx-pml",
                @"vmx-posted-intr",
                @"vmx-preemption-timer",
                @"vmx-rdpmc-exit",
                @"vmx-rdrand-exit",
                @"vmx-rdseed-exit",
                @"vmx-rdtsc-exit",
                @"vmx-rdtscp-exit",
                @"vmx-secondary-ctls",
                @"vmx-shadow-vmcs",
                @"vmx-store-lma",
                @"vmx-true-ctls",
                @"vmx-tsc-offset",
                @"vmx-tsc-scaling",
                @"vmx-unrestricted-guest",
                @"vmx-vintr-pending",
                @"vmx-vmfunc",
                @"vmx-vmwrite-vmexit-fields",
                @"vmx-vnmi",
                @"vmx-vnmi-pending",
                @"vmx-vpid",
                @"vmx-wbinvd-exit",
                @"vmx-xsaves",
                @"vmx-zero-len-inject",
                @"vpclmulqdq",
                @"waitpkg",
                @"wbnoinvd",
                @"wdt",
                @"x2apic",
                @"xcrypt",
                @"xcrypt-en",
                @"xgetbv1",
                @"xop",
                @"xsave",
                @"xsavec",
                @"xsaveerptr",
                @"xsaveopt",
                @"xsaves",
                @"xstore",
                @"xstore-en",
                @"xtpr",
            ],
        @"m68k":
            @[
            ],
        @"microblaze":
            @[
            ],
        @"microblazeel":
            @[
            ],
        @"mips":
            @[
            ],
        @"mipsel":
            @[
            ],
        @"mips64":
            @[
            ],
        @"mips64el":
            @[
            ],
        @"nios2":
            @[
            ],
        @"or1k":
            @[
            ],
        @"ppc":
            @[
            ],
        @"ppc64":
            @[
            ],
        @"riscv32":
            @[
            ],
        @"riscv64":
            @[
            ],
        @"rx":
            @[
            ],
        @"s390x":
            @[
                @"",
                @"64bscao",
                @"aefsi",
                @"aen",
                @"ais",
                @"ap",
                @"apft",
                @"apqci",
                @"apqi",
                @"asnlxr",
                @"beareh",
                @"bpb",
                @"cei",
                @"cmm",
                @"cmma",
                @"cmmnt",
                @"cmpsceh",
                @"csske",
                @"csst",
                @"csst2",
                @"cte",
                @"ctop",
                @"dateh",
                @"dateh2",
                @"deflate",
                @"deflate-base",
                @"dfltcc-cmpr",
                @"dfltcc-f0",
                @"dfltcc-gdht",
                @"dfltcc-xpnd",
                @"dfp",
                @"dfphp",
                @"dfppc",
                @"dfpzc",
                @"diag318",
                @"ectg",
                @"edat",
                @"edat2",
                @"eec",
                @"eimm",
                @"els",
                @"emon",
                @"esan3",
                @"esop",
                @"esort",
                @"esort-base",
                @"etf2",
                @"etf2eh",
                @"etf3",
                @"etf3eh",
                @"etoken",
                @"exrl",
                @"fpe",
                @"fpseh",
                @"gen13ptff",
                @"ginste",
                @"gpereh",
                @"gs",
                @"gsls",
                @"hfpm",
                @"hfpue",
                @"hpma2",
                @"iacc2",
                @"ib",
                @"ibs",
                @"idter",
                @"idtes",
                @"iep",
                @"ipter",
                @"irbm",
                @"kdsa-ecdsa-sign-p256",
                @"kdsa-ecdsa-sign-p384",
                @"kdsa-ecdsa-sign-p521",
                @"kdsa-ecdsa-verify-p256",
                @"kdsa-ecdsa-verify-p384",
                @"kdsa-ecdsa-verify-p521",
                @"kdsa-eddsa-sign-ed25519",
                @"kdsa-eddsa-sign-ed448",
                @"kdsa-eddsa-verify-ed25519",
                @"kdsa-eddsa-verify-ed448",
                @"kdsa-eecdsa-sign-p256",
                @"kdsa-eecdsa-sign-p384",
                @"kdsa-eecdsa-sign-p521",
                @"kdsa-eeddsa-sign-ed25519",
                @"kdsa-eeddsa-sign-ed448",
                @"kimd-ghash",
                @"kimd-sha-1",
                @"kimd-sha-256",
                @"kimd-sha-512",
                @"kimd-sha3-224",
                @"kimd-sha3-256",
                @"kimd-sha3-384",
                @"kimd-sha3-512",
                @"kimd-shake-128",
                @"kimd-shake-256",
                @"klmd-sha-1",
                @"klmd-sha-256",
                @"klmd-sha-512",
                @"klmd-sha3-224",
                @"klmd-sha3-256",
                @"klmd-sha3-384",
                @"klmd-sha3-512",
                @"klmd-shake-128",
                @"klmd-shake-256",
                @"km-aes-128",
                @"km-aes-192",
                @"km-aes-256",
                @"km-dea",
                @"km-eaes-128",
                @"km-eaes-192",
                @"km-eaes-256",
                @"km-edea",
                @"km-etdea-128",
                @"km-etdea-192",
                @"km-tdea-128",
                @"km-tdea-192",
                @"km-xts-aes-128",
                @"km-xts-aes-256",
                @"km-xts-eaes-128",
                @"km-xts-eaes-256",
                @"kma-gcm-aes-128",
                @"kma-gcm-aes-192",
                @"kma-gcm-aes-256",
                @"kma-gcm-eaes-128",
                @"kma-gcm-eaes-192",
                @"kma-gcm-eaes-256",
                @"kmac-aes-128",
                @"kmac-aes-192",
                @"kmac-aes-256",
                @"kmac-dea",
                @"kmac-eaes-128",
                @"kmac-eaes-192",
                @"kmac-eaes-256",
                @"kmac-edea",
                @"kmac-etdea-128",
                @"kmac-etdea-192",
                @"kmac-tdea-128",
                @"kmac-tdea-192",
                @"kmc-aes-128",
                @"kmc-aes-192",
                @"kmc-aes-256",
                @"kmc-dea",
                @"kmc-eaes-128",
                @"kmc-eaes-192",
                @"kmc-eaes-256",
                @"kmc-edea",
                @"kmc-etdea-128",
                @"kmc-etdea-192",
                @"kmc-prng",
                @"kmc-tdea-128",
                @"kmc-tdea-192",
                @"kmctr-aes-128",
                @"kmctr-aes-192",
                @"kmctr-aes-256",
                @"kmctr-dea",
                @"kmctr-eaes-128",
                @"kmctr-eaes-192",
                @"kmctr-eaes-256",
                @"kmctr-edea",
                @"kmctr-etdea-128",
                @"kmctr-etdea-192",
                @"kmctr-tdea-128",
                @"kmctr-tdea-192",
                @"kmf-aes-128",
                @"kmf-aes-192",
                @"kmf-aes-256",
                @"kmf-dea",
                @"kmf-eaes-128",
                @"kmf-eaes-192",
                @"kmf-eaes-256",
                @"kmf-edea",
                @"kmf-etdea-128",
                @"kmf-etdea-192",
                @"kmf-tdea-128",
                @"kmf-tdea-192",
                @"kmo-aes-128",
                @"kmo-aes-192",
                @"kmo-aes-256",
                @"kmo-dea",
                @"kmo-eaes-128",
                @"kmo-eaes-192",
                @"kmo-eaes-256",
                @"kmo-edea",
                @"kmo-etdea-128",
                @"kmo-etdea-192",
                @"kmo-tdea-128",
                @"kmo-tdea-192",
                @"kss",
                @"ldisp",
                @"ldisphp",
                @"ltlbc",
                @"mepoch",
                @"mepochptff",
                @"minste2",
                @"minste3",
                @"msa",
                @"msa-base",
                @"msa1",
                @"msa2",
                @"msa3",
                @"msa3-base",
                @"msa4",
                @"msa4-base",
                @"msa5",
                @"msa5-base",
                @"msa6",
                @"msa7",
                @"msa8",
                @"msa8-base",
                @"msa9",
                @"msa9-base",
                @"msa9_pckmo",
                @"mvcos",
                @"nnpa",
                @"nonqks",
                @"opc",
                @"pai",
                @"parseh",
                @"pcc-cmac-aes-128",
                @"pcc-cmac-aes-192",
                @"pcc-cmac-aes-256",
                @"pcc-cmac-dea",
                @"pcc-cmac-eaes-128",
                @"pcc-cmac-eaes-192",
                @"pcc-cmac-eaes-256",
                @"pcc-cmac-edea",
                @"pcc-cmac-etdea-128",
                @"pcc-cmac-etdea-192",
                @"pcc-cmac-tdea-128",
                @"pcc-cmac-tdea-192",
                @"pcc-scalar-mult-ed25519",
                @"pcc-scalar-mult-ed448",
                @"pcc-scalar-mult-p256",
                @"pcc-scalar-mult-p384",
                @"pcc-scalar-mult-p521",
                @"pcc-scalar-mult-x25519",
                @"pcc-scalar-mult-x448",
                @"pcc-xts-aes-128",
                @"pcc-xts-aes-256",
                @"pcc-xts-eaes-128",
                @"pcc-xts-eaes-256",
                @"pckmo-aes-128",
                @"pckmo-aes-192",
                @"pckmo-aes-256",
                @"pckmo-ecc-ed25519",
                @"pckmo-ecc-ed448",
                @"pckmo-ecc-p256",
                @"pckmo-ecc-p384",
                @"pckmo-ecc-p521",
                @"pckmo-edea",
                @"pckmo-etdea-128",
                @"pckmo-etdea-192",
                @"pfmfi",
                @"pfpo",
                @"plo",
                @"plo-cl",
                @"plo-clg",
                @"plo-clgr",
                @"plo-clx",
                @"plo-cs",
                @"plo-csdst",
                @"plo-csdstg",
                @"plo-csdstgr",
                @"plo-csdstx",
                @"plo-csg",
                @"plo-csgr",
                @"plo-csst",
                @"plo-csstg",
                @"plo-csstgr",
                @"plo-csstx",
                @"plo-cstst",
                @"plo-cststg",
                @"plo-cststgr",
                @"plo-cststx",
                @"plo-csx",
                @"plo-dcs",
                @"plo-dcsg",
                @"plo-dcsgr",
                @"plo-dcsx",
                @"ppa15",
                @"ppno-sha-512-drng",
                @"prno-trng",
                @"prno-trng-qrtcr",
                @"ptff-qpc",
                @"ptff-qsi",
                @"ptff-qsie",
                @"ptff-qto",
                @"ptff-qtou",
                @"ptff-qtoue",
                @"ptff-qui",
                @"ptff-sto",
                @"ptff-stoe",
                @"ptff-stou",
                @"ptff-stoue",
                @"rdp",
                @"ri",
                @"sea_esop2",
                @"sema",
                @"sief2",
                @"sigpif",
                @"siif",
                @"skey",
                @"sortl-128",
                @"sortl-32",
                @"sortl-f0",
                @"sortl-sflr",
                @"sortl-svlr",
                @"sprogp",
                @"srs",
                @"stckf",
                @"stfle",
                @"stfle45",
                @"stfle49",
                @"stfle53",
                @"sthyi",
                @"te",
                @"tods",
                @"tods-base",
                @"tpei",
                @"tsi",
                @"unpack",
                @"vx",
                @"vxeh",
                @"vxeh2",
                @"vxpd",
                @"vxpdeh",
                @"vxpdeh2",
                @"zarch",
                @"zpci",
            ],
        @"sh4":
            @[
            ],
        @"sh4eb":
            @[
            ],
        @"sparc":
            @[
                @"+cmt",
                @"+float128",
                @"+gl",
                @"+hypv",
                @"+vis1",
                @"+vis2",
                @"-div",
                @"-float",
                @"-flush",
                @"-fmul",
                @"-fsmuld",
                @"-fsqrt",
                @"-mul",
                @"-swap",
            ],
        @"sparc64":
            @[
                @"+cmt",
                @"+float128",
                @"+gl",
                @"+hypv",
                @"-div",
                @"-float",
                @"-flush",
                @"-fmul",
                @"-fsmuld",
                @"-fsqrt",
                @"-mul",
                @"-swap",
                @"-vis1",
                @"-vis2",
            ],
        @"tricore":
            @[
            ],
        @"x86_64":
            @[
                @"3dnow",
                @"3dnowext",
                @"3dnowprefetch",
                @"abm",
                @"ace2",
                @"ace2-en",
                @"acpi",
                @"adx",
                @"aes",
                @"amd-no-ssb",
                @"amd-ssbd",
                @"amd-stibp",
                @"apic",
                @"arat",
                @"arch-capabilities",
                @"avic",
                @"avx",
                @"avx-vnni",
                @"avx2",
                @"avx512-4fmaps",
                @"avx512-4vnniw",
                @"avx512-bf16",
                @"avx512-fp16",
                @"avx512-vp2intersect",
                @"avx512-vpopcntdq",
                @"avx512bitalg",
                @"avx512bw",
                @"avx512cd",
                @"avx512dq",
                @"avx512er",
                @"avx512f",
                @"avx512ifma",
                @"avx512pf",
                @"avx512vbmi",
                @"avx512vbmi2",
                @"avx512vl",
                @"avx512vnni",
                @"bmi1",
                @"bmi2",
                @"bus-lock-detect",
                @"cid",
                @"cldemote",
                @"clflush",
                @"clflushopt",
                @"clwb",
                @"clzero",
                @"cmov",
                @"cmp-legacy",
                @"core-capability",
                @"cr8legacy",
                @"cx16",
                @"cx8",
                @"dca",
                @"de",
                @"decodeassists",
                @"ds",
                @"ds-cpl",
                @"dtes64",
                @"erms",
                @"est",
                @"extapic",
                @"f16c",
                @"flushbyasid",
                @"fma",
                @"fma4",
                @"fpu",
                @"fsgsbase",
                @"fsrm",
                @"full-width-write",
                @"fxsr",
                @"fxsr-opt",
                @"gfni",
                @"hle",
                @"ht",
                @"hypervisor",
                @"ia64",
                @"ibpb",
                @"ibrs",
                @"ibrs-all",
                @"ibs",
                @"intel-pt",
                @"intel-pt-lip",
                @"invpcid",
                @"invtsc",
                @"kvm-asyncpf",
                @"kvm-asyncpf-int",
                @"kvm-hint-dedicated",
                @"kvm-mmu",
                @"kvm-msi-ext-dest-id",
                @"kvm-nopiodelay",
                @"kvm-poll-control",
                @"kvm-pv-eoi",
                @"kvm-pv-ipi",
                @"kvm-pv-sched-yield",
                @"kvm-pv-tlb-flush",
                @"kvm-pv-unhalt",
                @"kvm-steal-time",
                @"kvmclock",
                @"kvmclock-stable-bit",
                @"la57",
                @"lahf-lm",
                @"lbrv",
                @"lm",
                @"lwp",
                @"mca",
                @"mce",
                @"md-clear",
                @"mds-no",
                @"misalignsse",
                @"mmx",
                @"mmxext",
                @"monitor",
                @"movbe",
                @"movdir64b",
                @"movdiri",
                @"mpx",
                @"msr",
                @"mtrr",
                @"nodeid-msr",
                @"npt",
                @"nrip-save",
                @"nx",
                @"osvw",
                @"pae",
                @"pat",
                @"pause-filter",
                @"pbe",
                @"pcid",
                @"pclmulqdq",
                @"pcommit",
                @"pdcm",
                @"pdpe1gb",
                @"perfctr-core",
                @"perfctr-nb",
                @"pfthreshold",
                @"pge",
                @"phe",
                @"phe-en",
                @"pks",
                @"pku",
                @"pmm",
                @"pmm-en",
                @"pn",
                @"pni",
                @"popcnt",
                @"pschange-mc-no",
                @"pse",
                @"pse36",
                @"rdctl-no",
                @"rdpid",
                @"rdrand",
                @"rdseed",
                @"rdtscp",
                @"rsba",
                @"rtm",
                @"sep",
                @"serialize",
                @"sgx",
                @"sgx-debug",
                @"sgx-exinfo",
                @"sgx-kss",
                @"sgx-mode64",
                @"sgx-provisionkey",
                @"sgx-tokenkey",
                @"sgx1",
                @"sgx2",
                @"sgxlc",
                @"sha-ni",
                @"skinit",
                @"skip-l1dfl-vmentry",
                @"smap",
                @"smep",
                @"smx",
                @"spec-ctrl",
                @"split-lock-detect",
                @"ss",
                @"ssb-no",
                @"ssbd",
                @"sse",
                @"sse2",
                @"sse4.1",
                @"sse4.2",
                @"sse4a",
                @"ssse3",
                @"stibp",
                @"svm",
                @"svm-lock",
                @"svme-addr-chk",
                @"syscall",
                @"taa-no",
                @"tbm",
                @"tce",
                @"tm",
                @"tm2",
                @"topoext",
                @"tsc",
                @"tsc-adjust",
                @"tsc-deadline",
                @"tsc-scale",
                @"tsx-ctrl",
                @"tsx-ldtrk",
                @"umip",
                @"v-vmsave-vmload",
                @"vaes",
                @"vgif",
                @"virt-ssbd",
                @"vmcb-clean",
                @"vme",
                @"vmx",
                @"vmx-activity-hlt",
                @"vmx-activity-shutdown",
                @"vmx-activity-wait-sipi",
                @"vmx-apicv-register",
                @"vmx-apicv-vid",
                @"vmx-apicv-x2apic",
                @"vmx-apicv-xapic",
                @"vmx-cr3-load-noexit",
                @"vmx-cr3-store-noexit",
                @"vmx-cr8-load-exit",
                @"vmx-cr8-store-exit",
                @"vmx-desc-exit",
                @"vmx-encls-exit",
                @"vmx-entry-ia32e-mode",
                @"vmx-entry-load-bndcfgs",
                @"vmx-entry-load-efer",
                @"vmx-entry-load-pat",
                @"vmx-entry-load-perf-global-ctrl",
                @"vmx-entry-load-pkrs",
                @"vmx-entry-load-rtit-ctl",
                @"vmx-entry-noload-debugctl",
                @"vmx-ept",
                @"vmx-ept-1gb",
                @"vmx-ept-2mb",
                @"vmx-ept-advanced-exitinfo",
                @"vmx-ept-execonly",
                @"vmx-eptad",
                @"vmx-eptp-switching",
                @"vmx-exit-ack-intr",
                @"vmx-exit-clear-bndcfgs",
                @"vmx-exit-clear-rtit-ctl",
                @"vmx-exit-load-efer",
                @"vmx-exit-load-pat",
                @"vmx-exit-load-perf-global-ctrl",
                @"vmx-exit-load-pkrs",
                @"vmx-exit-nosave-debugctl",
                @"vmx-exit-save-efer",
                @"vmx-exit-save-pat",
                @"vmx-exit-save-preemption-timer",
                @"vmx-flexpriority",
                @"vmx-hlt-exit",
                @"vmx-ins-outs",
                @"vmx-intr-exit",
                @"vmx-invept",
                @"vmx-invept-all-context",
                @"vmx-invept-single-context",
                @"vmx-invept-single-context-noglobals",
                @"vmx-invlpg-exit",
                @"vmx-invpcid-exit",
                @"vmx-invvpid",
                @"vmx-invvpid-all-context",
                @"vmx-invvpid-single-addr",
                @"vmx-io-bitmap",
                @"vmx-io-exit",
                @"vmx-monitor-exit",
                @"vmx-movdr-exit",
                @"vmx-msr-bitmap",
                @"vmx-mtf",
                @"vmx-mwait-exit",
                @"vmx-nmi-exit",
                @"vmx-page-walk-4",
                @"vmx-page-walk-5",
                @"vmx-pause-exit",
                @"vmx-ple",
                @"vmx-pml",
                @"vmx-posted-intr",
                @"vmx-preemption-timer",
                @"vmx-rdpmc-exit",
                @"vmx-rdrand-exit",
                @"vmx-rdseed-exit",
                @"vmx-rdtsc-exit",
                @"vmx-rdtscp-exit",
                @"vmx-secondary-ctls",
                @"vmx-shadow-vmcs",
                @"vmx-store-lma",
                @"vmx-true-ctls",
                @"vmx-tsc-offset",
                @"vmx-tsc-scaling",
                @"vmx-unrestricted-guest",
                @"vmx-vintr-pending",
                @"vmx-vmfunc",
                @"vmx-vmwrite-vmexit-fields",
                @"vmx-vnmi",
                @"vmx-vnmi-pending",
                @"vmx-vpid",
                @"vmx-wbinvd-exit",
                @"vmx-xsaves",
                @"vmx-zero-len-inject",
                @"vpclmulqdq",
                @"waitpkg",
                @"wbnoinvd",
                @"wdt",
                @"x2apic",
                @"xcrypt",
                @"xcrypt-en",
                @"xgetbv1",
                @"xop",
                @"xsave",
                @"xsavec",
                @"xsaveerptr",
                @"xsaveopt",
                @"xsaves",
                @"xstore",
                @"xstore-en",
                @"xtpr",
            ],
        @"xtensa":
            @[
            ],
        @"xtensaeb":
            @[
            ],
    }[architecture];
}

+ (NSArray<NSString *>*)supportedTargetsForArchitecture:(NSString *)architecture {
    return @{
        @"alpha":
            @[
                @"clipper",
                @"none",
            ],
        @"arm":
            @[
                @"integratorcp",
                @"kzm",
                @"mps2-an385",
                @"mps2-an386",
                @"mps2-an500",
                @"mps2-an505",
                @"mps2-an511",
                @"mps2-an521",
                @"mps3-an524",
                @"mps3-an547",
                @"musca-a",
                @"musca-b1",
                @"realview-eb-mpcore",
                @"realview-eb",
                @"realview-pbx-a9",
                @"realview-pb-a8",
                @"vexpress-a15",
                @"vexpress-a9",
                @"versatileab",
                @"versatilepb",
                @"imx25-pdk",
                @"ast2500-evb",
                @"ast2600-evb",
                @"microbit",
                @"g220a-bmc",
                @"highbank",
                @"midway",
                @"canon-a1100",
                @"fuji-bmc",
                @"sabrelite",
                @"mcimx6ul-evk",
                @"mcimx7d-sabre",
                @"connex",
                @"verdex",
                @"rainier-bmc",
                @"fp5280g2-bmc",
                @"kudo-bmc",
                @"mainstone",
                @"musicpal",
                @"netduino2",
                @"netduinoplus2",
                @"n800",
                @"n810",
                @"npcm750-evb",
                @"sonorapass-bmc",
                @"palmetto-bmc",
                @"romulus-bmc",
                @"swift-bmc",
                @"tacoma-bmc",
                @"witherspoon-bmc",
                @"orangepi-pc",
                @"cheetah",
                @"virt-2.10",
                @"virt-2.11",
                @"virt-2.12",
                @"virt-2.6",
                @"virt-2.7",
                @"virt-2.8",
                @"virt-2.9",
                @"virt-3.0",
                @"virt-3.1",
                @"virt-4.0",
                @"virt-4.1",
                @"virt-4.2",
                @"virt-5.0",
                @"virt-5.1",
                @"virt-5.2",
                @"virt-6.0",
                @"virt-6.1",
                @"virt",
                @"virt-6.2",
                @"quanta-gbs-bmc",
                @"quanta-gsj",
                @"quanta-q71l-bmc",
                @"raspi2b",
                @"raspi1ap",
                @"raspi0",
                @"stm32vldiscovery",
                @"nuri",
                @"smdkc210",
                @"collie",
                @"tosa",
                @"akita",
                @"spitz",
                @"borzoi",
                @"terrier",
                @"sx1-v1",
                @"sx1",
                @"emcraft-sf2",
                @"lm3s6965evb",
                @"lm3s811evb",
                @"supermicrox11-bmc",
                @"xilinx-zynq-a9",
                @"z2",
                @"cubieboard",
                @"none",
            ],
        @"aarch64":
            @[
                @"integratorcp",
                @"kzm",
                @"mps2-an385",
                @"mps2-an386",
                @"mps2-an500",
                @"mps2-an505",
                @"mps2-an511",
                @"mps2-an521",
                @"mps3-an524",
                @"mps3-an547",
                @"musca-a",
                @"musca-b1",
                @"realview-eb-mpcore",
                @"realview-eb",
                @"realview-pbx-a9",
                @"realview-pb-a8",
                @"vexpress-a15",
                @"vexpress-a9",
                @"versatileab",
                @"versatilepb",
                @"imx25-pdk",
                @"ast2500-evb",
                @"ast2600-evb",
                @"microbit",
                @"g220a-bmc",
                @"highbank",
                @"midway",
                @"canon-a1100",
                @"fuji-bmc",
                @"sabrelite",
                @"mcimx6ul-evk",
                @"mcimx7d-sabre",
                @"connex",
                @"verdex",
                @"rainier-bmc",
                @"fp5280g2-bmc",
                @"kudo-bmc",
                @"mainstone",
                @"musicpal",
                @"netduino2",
                @"netduinoplus2",
                @"n800",
                @"n810",
                @"npcm750-evb",
                @"sonorapass-bmc",
                @"palmetto-bmc",
                @"romulus-bmc",
                @"swift-bmc",
                @"tacoma-bmc",
                @"witherspoon-bmc",
                @"orangepi-pc",
                @"cheetah",
                @"sbsa-ref",
                @"virt-2.10",
                @"virt-2.11",
                @"virt-2.12",
                @"virt-2.6",
                @"virt-2.7",
                @"virt-2.8",
                @"virt-2.9",
                @"virt-3.0",
                @"virt-3.1",
                @"virt-4.0",
                @"virt-4.1",
                @"virt-4.2",
                @"virt-5.0",
                @"virt-5.1",
                @"virt-5.2",
                @"virt-6.0",
                @"virt-6.1",
                @"virt",
                @"virt-6.2",
                @"quanta-gbs-bmc",
                @"quanta-gsj",
                @"quanta-q71l-bmc",
                @"raspi2b",
                @"raspi3ap",
                @"raspi3b",
                @"raspi1ap",
                @"raspi0",
                @"stm32vldiscovery",
                @"nuri",
                @"smdkc210",
                @"collie",
                @"tosa",
                @"akita",
                @"spitz",
                @"borzoi",
                @"terrier",
                @"sx1-v1",
                @"sx1",
                @"emcraft-sf2",
                @"lm3s6965evb",
                @"lm3s811evb",
                @"supermicrox11-bmc",
                @"xlnx-versal-virt",
                @"xilinx-zynq-a9",
                @"xlnx-zcu102",
                @"z2",
                @"cubieboard",
                @"none",
            ],
        @"avr":
            @[
                @"2009",
                @"arduino-duemilanove",
                @"mega",
                @"arduino-mega",
                @"mega2560",
                @"arduino-mega-2560-v3",
                @"uno",
                @"arduino-uno",
                @"none",
            ],
        @"cris":
            @[
                @"axis-dev88",
                @"none",
            ],
        @"hppa":
            @[
                @"hppa",
                @"none",
            ],
        @"i386":
            @[
                @"isapc",
                @"q35",
                @"pc-q35-2.10",
                @"pc-q35-2.11",
                @"pc-q35-2.12",
                @"pc-q35-2.4",
                @"pc-q35-2.5",
                @"pc-q35-2.6",
                @"pc-q35-2.7",
                @"pc-q35-2.8",
                @"pc-q35-2.9",
                @"pc-q35-3.0",
                @"pc-q35-3.1",
                @"pc-q35-4.0",
                @"pc-q35-4.0.1",
                @"pc-q35-4.1",
                @"pc-q35-4.2",
                @"pc-q35-5.0",
                @"pc-q35-5.1",
                @"pc-q35-5.2",
                @"pc-q35-6.0",
                @"pc-q35-6.1",
                @"pc-q35-6.2",
                @"pc",
                @"pc-i440fx-6.2",
                @"pc-i440fx-1.4",
                @"pc-i440fx-1.5",
                @"pc-i440fx-1.6",
                @"pc-i440fx-1.7",
                @"pc-i440fx-2.0",
                @"pc-i440fx-2.1",
                @"pc-i440fx-2.10",
                @"pc-i440fx-2.11",
                @"pc-i440fx-2.12",
                @"pc-i440fx-2.2",
                @"pc-i440fx-2.3",
                @"pc-i440fx-2.4",
                @"pc-i440fx-2.5",
                @"pc-i440fx-2.6",
                @"pc-i440fx-2.7",
                @"pc-i440fx-2.8",
                @"pc-i440fx-2.9",
                @"pc-i440fx-3.0",
                @"pc-i440fx-3.1",
                @"pc-i440fx-4.0",
                @"pc-i440fx-4.1",
                @"pc-i440fx-4.2",
                @"pc-i440fx-5.0",
                @"pc-i440fx-5.1",
                @"pc-i440fx-5.2",
                @"pc-i440fx-6.0",
                @"pc-i440fx-6.1",
                @"none",
                @"microvm",
            ],
        @"m68k":
            @[
                @"an5206",
                @"mcf5208evb",
                @"q800",
                @"next-cube",
                @"virt-6.0",
                @"virt-6.1",
                @"virt",
                @"virt-6.2",
                @"none",
            ],
        @"microblaze":
            @[
                @"petalogix-s3adsp1800",
                @"petalogix-ml605",
                @"xlnx-zynqmp-pmu",
                @"none",
            ],
        @"microblazeel":
            @[
                @"petalogix-s3adsp1800",
                @"petalogix-ml605",
                @"xlnx-zynqmp-pmu",
                @"none",
            ],
        @"mips":
            @[
                @"mipssim",
                @"malta",
                @"none",
            ],
        @"mipsel":
            @[
                @"mipssim",
                @"malta",
                @"none",
            ],
        @"mips64":
            @[
                @"pica61",
                @"mipssim",
                @"magnum",
                @"malta",
                @"none",
            ],
        @"mips64el":
            @[
                @"pica61",
                @"fuloong2e",
                @"loongson3-virt",
                @"boston",
                @"mipssim",
                @"magnum",
                @"malta",
                @"none",
            ],
        @"nios2":
            @[
                @"10m50-ghrd",
                @"nios2-generic-nommu",
                @"none",
            ],
        @"or1k":
            @[
                @"none",
                @"or1k-sim",
            ],
        @"ppc":
            @[
                @"pegasos2",
                @"g3beige",
                @"40p",
                @"mac99",
                @"virtex-ml507",
                @"sam460ex",
                @"bamboo",
                @"none",
                @"ppce500",
                @"mpc8544ds",
                @"ref405ep",
                @"taihu",
            ],
        @"ppc64":
            @[
                @"pegasos2",
                @"g3beige",
                @"powernv10",
                @"powernv8",
                @"powernv",
                @"powernv9",
                @"40p",
                @"mac99",
                @"virtex-ml507",
                @"sam460ex",
                @"bamboo",
                @"none",
                @"ppce500",
                @"mpc8544ds",
                @"pseries",
                @"pseries-6.2",
                @"pseries-2.1",
                @"pseries-2.10",
                @"pseries-2.11",
                @"pseries-2.12",
                @"pseries-2.12-sxxm",
                @"pseries-2.2",
                @"pseries-2.3",
                @"pseries-2.4",
                @"pseries-2.5",
                @"pseries-2.6",
                @"pseries-2.7",
                @"pseries-2.8",
                @"pseries-2.9",
                @"pseries-3.0",
                @"pseries-3.1",
                @"pseries-4.0",
                @"pseries-4.1",
                @"pseries-4.2",
                @"pseries-5.0",
                @"pseries-5.1",
                @"pseries-5.2",
                @"pseries-6.0",
                @"pseries-6.1",
                @"ref405ep",
                @"taihu",
            ],
        @"riscv32":
            @[
                @"opentitan",
                @"sifive_e",
                @"sifive_u",
                @"spike",
                @"virt",
                @"none",
            ],
        @"riscv64":
            @[
                @"microchip-icicle-kit",
                @"shakti_c",
                @"sifive_e",
                @"sifive_u",
                @"spike",
                @"virt",
                @"none",
            ],
        @"rx":
            @[
                @"none",
                @"gdbsim-r5f562n7",
                @"gdbsim-r5f562n8",
            ],
        @"s390x":
            @[
                @"s390-ccw-virtio-2.10",
                @"s390-ccw-virtio-2.11",
                @"s390-ccw-virtio-2.12",
                @"s390-ccw-virtio-2.4",
                @"s390-ccw-virtio-2.5",
                @"s390-ccw-virtio-2.6",
                @"s390-ccw-virtio-2.7",
                @"s390-ccw-virtio-2.8",
                @"s390-ccw-virtio-2.9",
                @"s390-ccw-virtio-3.0",
                @"s390-ccw-virtio-3.1",
                @"s390-ccw-virtio-4.0",
                @"s390-ccw-virtio-4.1",
                @"s390-ccw-virtio-4.2",
                @"s390-ccw-virtio-5.0",
                @"s390-ccw-virtio-5.1",
                @"s390-ccw-virtio-5.2",
                @"s390-ccw-virtio-6.0",
                @"s390-ccw-virtio-6.1",
                @"s390-ccw-virtio",
                @"s390-ccw-virtio-6.2",
                @"none",
            ],
        @"sh4":
            @[
                @"none",
                @"r2d",
                @"shix",
            ],
        @"sh4eb":
            @[
                @"none",
                @"r2d",
                @"shix",
            ],
        @"sparc":
            @[
                @"leon3_generic",
                @"SPARCClassic",
                @"SPARCbook",
                @"SS-600MP",
                @"SS-10",
                @"SS-20",
                @"SS-4",
                @"SS-5",
                @"LX",
                @"Voyager",
                @"none",
            ],
        @"sparc64":
            @[
                @"sun4u",
                @"sun4v",
                @"niagara",
                @"none",
            ],
        @"tricore":
            @[
                @"KIT_AURIX_TC277_TRB",
                @"tricore_testboard",
                @"none",
            ],
        @"x86_64":
            @[
                @"isapc",
                @"q35",
                @"pc-q35-2.10",
                @"pc-q35-2.11",
                @"pc-q35-2.12",
                @"pc-q35-2.4",
                @"pc-q35-2.5",
                @"pc-q35-2.6",
                @"pc-q35-2.7",
                @"pc-q35-2.8",
                @"pc-q35-2.9",
                @"pc-q35-3.0",
                @"pc-q35-3.1",
                @"pc-q35-4.0",
                @"pc-q35-4.0.1",
                @"pc-q35-4.1",
                @"pc-q35-4.2",
                @"pc-q35-5.0",
                @"pc-q35-5.1",
                @"pc-q35-5.2",
                @"pc-q35-6.0",
                @"pc-q35-6.1",
                @"pc-q35-6.2",
                @"pc",
                @"pc-i440fx-6.2",
                @"pc-i440fx-1.4",
                @"pc-i440fx-1.5",
                @"pc-i440fx-1.6",
                @"pc-i440fx-1.7",
                @"pc-i440fx-2.0",
                @"pc-i440fx-2.1",
                @"pc-i440fx-2.10",
                @"pc-i440fx-2.11",
                @"pc-i440fx-2.12",
                @"pc-i440fx-2.2",
                @"pc-i440fx-2.3",
                @"pc-i440fx-2.4",
                @"pc-i440fx-2.5",
                @"pc-i440fx-2.6",
                @"pc-i440fx-2.7",
                @"pc-i440fx-2.8",
                @"pc-i440fx-2.9",
                @"pc-i440fx-3.0",
                @"pc-i440fx-3.1",
                @"pc-i440fx-4.0",
                @"pc-i440fx-4.1",
                @"pc-i440fx-4.2",
                @"pc-i440fx-5.0",
                @"pc-i440fx-5.1",
                @"pc-i440fx-5.2",
                @"pc-i440fx-6.0",
                @"pc-i440fx-6.1",
                @"none",
                @"microvm",
            ],
        @"xtensa":
            @[
                @"none",
                @"kc705",
                @"kc705-nommu",
                @"lx200",
                @"lx200-nommu",
                @"lx60",
                @"lx60-nommu",
                @"ml605",
                @"ml605-nommu",
                @"sim",
                @"virt",
            ],
        @"xtensaeb":
            @[
                @"none",
                @"kc705",
                @"kc705-nommu",
                @"lx200",
                @"lx200-nommu",
                @"lx60",
                @"lx60-nommu",
                @"ml605",
                @"ml605-nommu",
                @"sim",
                @"virt",
            ],
    }[architecture];
}

+ (NSArray<NSString *>*)supportedTargetsForArchitecturePretty:(NSString *)architecture {
    return @{
        @"alpha":
            @[
                @"Alpha DP264/CLIPPER (default) (clipper)",
                @"empty machine (none)",
            ],
        @"arm":
            @[
                @"ARM Integrator/CP (ARM926EJ-S) (integratorcp)",
                @"ARM KZM Emulation Baseboard (ARM1136) (kzm)",
                @"ARM MPS2 with AN385 FPGA image for Cortex-M3 (mps2-an385)",
                @"ARM MPS2 with AN386 FPGA image for Cortex-M4 (mps2-an386)",
                @"ARM MPS2 with AN500 FPGA image for Cortex-M7 (mps2-an500)",
                @"ARM MPS2 with AN505 FPGA image for Cortex-M33 (mps2-an505)",
                @"ARM MPS2 with AN511 DesignStart FPGA image for Cortex-M3 (mps2-an511)",
                @"ARM MPS2 with AN521 FPGA image for dual Cortex-M33 (mps2-an521)",
                @"ARM MPS3 with AN524 FPGA image for dual Cortex-M33 (mps3-an524)",
                @"ARM MPS3 with AN547 FPGA image for Cortex-M55 (mps3-an547)",
                @"ARM Musca-A board (dual Cortex-M33) (musca-a)",
                @"ARM Musca-B1 board (dual Cortex-M33) (musca-b1)",
                @"ARM RealView Emulation Baseboard (ARM11MPCore) (realview-eb-mpcore)",
                @"ARM RealView Emulation Baseboard (ARM926EJ-S) (realview-eb)",
                @"ARM RealView Platform Baseboard Explore for Cortex-A9 (realview-pbx-a9)",
                @"ARM RealView Platform Baseboard for Cortex-A8 (realview-pb-a8)",
                @"ARM Versatile Express for Cortex-A15 (vexpress-a15)",
                @"ARM Versatile Express for Cortex-A9 (vexpress-a9)",
                @"ARM Versatile/AB (ARM926EJ-S) (versatileab)",
                @"ARM Versatile/PB (ARM926EJ-S) (versatilepb)",
                @"ARM i.MX25 PDK board (ARM926) (imx25-pdk)",
                @"Aspeed AST2500 EVB (ARM1176) (ast2500-evb)",
                @"Aspeed AST2600 EVB (Cortex-A7) (ast2600-evb)",
                @"BBC micro:bit (Cortex-M0) (microbit)",
                @"Bytedance G220A BMC (ARM1176) (g220a-bmc)",
                @"Calxeda Highbank (ECX-1000) (highbank)",
                @"Calxeda Midway (ECX-2000) (midway)",
                @"Canon PowerShot A1100 IS (ARM946) (canon-a1100)",
                @"Facebook Fuji BMC (Cortex-A7) (fuji-bmc)",
                @"Freescale i.MX6 Quad SABRE Lite Board (Cortex-A9) (sabrelite)",
                @"Freescale i.MX6UL Evaluation Kit (Cortex-A7) (mcimx6ul-evk)",
                @"Freescale i.MX7 DUAL SABRE (Cortex-A7) (mcimx7d-sabre)",
                @"Gumstix Connex (PXA255) (connex)",
                @"Gumstix Verdex (PXA270) (verdex)",
                @"IBM Rainier BMC (Cortex-A7) (rainier-bmc)",
                @"Inspur FP5280G2 BMC (ARM1176) (fp5280g2-bmc)",
                @"Kudo BMC (Cortex-A9) (kudo-bmc)",
                @"Mainstone II (PXA27x) (mainstone)",
                @"Marvell 88w8618 / MusicPal (ARM926EJ-S) (musicpal)",
                @"Netduino 2 Machine (Cortex-M3) (netduino2)",
                @"Netduino Plus 2 Machine (Cortex-M4) (netduinoplus2)",
                @"Nokia N800 tablet aka. RX-34 (OMAP2420) (n800)",
                @"Nokia N810 tablet aka. RX-44 (OMAP2420) (n810)",
                @"Nuvoton NPCM750 Evaluation Board (Cortex-A9) (npcm750-evb)",
                @"OCP SonoraPass BMC (ARM1176) (sonorapass-bmc)",
                @"OpenPOWER Palmetto BMC (ARM926EJ-S) (palmetto-bmc)",
                @"OpenPOWER Romulus BMC (ARM1176) (romulus-bmc)",
                @"OpenPOWER Swift BMC (ARM1176) (deprecated) (swift-bmc)",
                @"OpenPOWER Tacoma BMC (Cortex-A7) (tacoma-bmc)",
                @"OpenPOWER Witherspoon BMC (ARM1176) (witherspoon-bmc)",
                @"Orange Pi PC (Cortex-A7) (orangepi-pc)",
                @"Palm Tungsten|E aka. Cheetah PDA (OMAP310) (cheetah)",
                @"QEMU 2.10 ARM Virtual Machine (virt-2.10)",
                @"QEMU 2.11 ARM Virtual Machine (virt-2.11)",
                @"QEMU 2.12 ARM Virtual Machine (virt-2.12)",
                @"QEMU 2.6 ARM Virtual Machine (virt-2.6)",
                @"QEMU 2.7 ARM Virtual Machine (virt-2.7)",
                @"QEMU 2.8 ARM Virtual Machine (virt-2.8)",
                @"QEMU 2.9 ARM Virtual Machine (virt-2.9)",
                @"QEMU 3.0 ARM Virtual Machine (virt-3.0)",
                @"QEMU 3.1 ARM Virtual Machine (virt-3.1)",
                @"QEMU 4.0 ARM Virtual Machine (virt-4.0)",
                @"QEMU 4.1 ARM Virtual Machine (virt-4.1)",
                @"QEMU 4.2 ARM Virtual Machine (virt-4.2)",
                @"QEMU 5.0 ARM Virtual Machine (virt-5.0)",
                @"QEMU 5.1 ARM Virtual Machine (virt-5.1)",
                @"QEMU 5.2 ARM Virtual Machine (virt-5.2)",
                @"QEMU 6.0 ARM Virtual Machine (virt-6.0)",
                @"QEMU 6.1 ARM Virtual Machine (virt-6.1)",
                @"QEMU 6.2 ARM Virtual Machine (alias of virt-6.2) (virt)",
                @"QEMU 6.2 ARM Virtual Machine (virt-6.2)",
                @"Quanta GBS (Cortex-A9) (quanta-gbs-bmc)",
                @"Quanta GSJ (Cortex-A9) (quanta-gsj)",
                @"Quanta-Q71l BMC (ARM926EJ-S) (quanta-q71l-bmc)",
                @"Raspberry Pi 2B (revision 1.1) (raspi2b)",
                @"Raspberry Pi A+ (revision 1.1) (raspi1ap)",
                @"Raspberry Pi Zero (revision 1.2) (raspi0)",
                @"ST STM32VLDISCOVERY (Cortex-M3) (stm32vldiscovery)",
                @"Samsung NURI board (Exynos4210) (nuri)",
                @"Samsung SMDKC210 board (Exynos4210) (smdkc210)",
                @"Sharp SL-5500 (Collie) PDA (SA-1110) (collie)",
                @"Sharp SL-6000 (Tosa) PDA (PXA255) (tosa)",
                @"Sharp SL-C1000 (Akita) PDA (PXA270) (akita)",
                @"Sharp SL-C3000 (Spitz) PDA (PXA270) (spitz)",
                @"Sharp SL-C3100 (Borzoi) PDA (PXA270) (borzoi)",
                @"Sharp SL-C3200 (Terrier) PDA (PXA270) (terrier)",
                @"Siemens SX1 (OMAP310) V1 (sx1-v1)",
                @"Siemens SX1 (OMAP310) V2 (sx1)",
                @"SmartFusion2 SOM kit from Emcraft (M2S010) (emcraft-sf2)",
                @"Stellaris LM3S6965EVB (Cortex-M3) (lm3s6965evb)",
                @"Stellaris LM3S811EVB (Cortex-M3) (lm3s811evb)",
                @"Supermicro X11 BMC (ARM926EJ-S) (supermicrox11-bmc)",
                @"Xilinx Zynq Platform Baseboard for Cortex-A9 (xilinx-zynq-a9)",
                @"Zipit Z2 (PXA27x) (z2)",
                @"cubietech cubieboard (Cortex-A8) (cubieboard)",
                @"empty machine (none)",
            ],
        @"aarch64":
            @[
                @"ARM Integrator/CP (ARM926EJ-S) (integratorcp)",
                @"ARM KZM Emulation Baseboard (ARM1136) (kzm)",
                @"ARM MPS2 with AN385 FPGA image for Cortex-M3 (mps2-an385)",
                @"ARM MPS2 with AN386 FPGA image for Cortex-M4 (mps2-an386)",
                @"ARM MPS2 with AN500 FPGA image for Cortex-M7 (mps2-an500)",
                @"ARM MPS2 with AN505 FPGA image for Cortex-M33 (mps2-an505)",
                @"ARM MPS2 with AN511 DesignStart FPGA image for Cortex-M3 (mps2-an511)",
                @"ARM MPS2 with AN521 FPGA image for dual Cortex-M33 (mps2-an521)",
                @"ARM MPS3 with AN524 FPGA image for dual Cortex-M33 (mps3-an524)",
                @"ARM MPS3 with AN547 FPGA image for Cortex-M55 (mps3-an547)",
                @"ARM Musca-A board (dual Cortex-M33) (musca-a)",
                @"ARM Musca-B1 board (dual Cortex-M33) (musca-b1)",
                @"ARM RealView Emulation Baseboard (ARM11MPCore) (realview-eb-mpcore)",
                @"ARM RealView Emulation Baseboard (ARM926EJ-S) (realview-eb)",
                @"ARM RealView Platform Baseboard Explore for Cortex-A9 (realview-pbx-a9)",
                @"ARM RealView Platform Baseboard for Cortex-A8 (realview-pb-a8)",
                @"ARM Versatile Express for Cortex-A15 (vexpress-a15)",
                @"ARM Versatile Express for Cortex-A9 (vexpress-a9)",
                @"ARM Versatile/AB (ARM926EJ-S) (versatileab)",
                @"ARM Versatile/PB (ARM926EJ-S) (versatilepb)",
                @"ARM i.MX25 PDK board (ARM926) (imx25-pdk)",
                @"Aspeed AST2500 EVB (ARM1176) (ast2500-evb)",
                @"Aspeed AST2600 EVB (Cortex-A7) (ast2600-evb)",
                @"BBC micro:bit (Cortex-M0) (microbit)",
                @"Bytedance G220A BMC (ARM1176) (g220a-bmc)",
                @"Calxeda Highbank (ECX-1000) (highbank)",
                @"Calxeda Midway (ECX-2000) (midway)",
                @"Canon PowerShot A1100 IS (ARM946) (canon-a1100)",
                @"Facebook Fuji BMC (Cortex-A7) (fuji-bmc)",
                @"Freescale i.MX6 Quad SABRE Lite Board (Cortex-A9) (sabrelite)",
                @"Freescale i.MX6UL Evaluation Kit (Cortex-A7) (mcimx6ul-evk)",
                @"Freescale i.MX7 DUAL SABRE (Cortex-A7) (mcimx7d-sabre)",
                @"Gumstix Connex (PXA255) (connex)",
                @"Gumstix Verdex (PXA270) (verdex)",
                @"IBM Rainier BMC (Cortex-A7) (rainier-bmc)",
                @"Inspur FP5280G2 BMC (ARM1176) (fp5280g2-bmc)",
                @"Kudo BMC (Cortex-A9) (kudo-bmc)",
                @"Mainstone II (PXA27x) (mainstone)",
                @"Marvell 88w8618 / MusicPal (ARM926EJ-S) (musicpal)",
                @"Netduino 2 Machine (Cortex-M3) (netduino2)",
                @"Netduino Plus 2 Machine (Cortex-M4) (netduinoplus2)",
                @"Nokia N800 tablet aka. RX-34 (OMAP2420) (n800)",
                @"Nokia N810 tablet aka. RX-44 (OMAP2420) (n810)",
                @"Nuvoton NPCM750 Evaluation Board (Cortex-A9) (npcm750-evb)",
                @"OCP SonoraPass BMC (ARM1176) (sonorapass-bmc)",
                @"OpenPOWER Palmetto BMC (ARM926EJ-S) (palmetto-bmc)",
                @"OpenPOWER Romulus BMC (ARM1176) (romulus-bmc)",
                @"OpenPOWER Swift BMC (ARM1176) (deprecated) (swift-bmc)",
                @"OpenPOWER Tacoma BMC (Cortex-A7) (tacoma-bmc)",
                @"OpenPOWER Witherspoon BMC (ARM1176) (witherspoon-bmc)",
                @"Orange Pi PC (Cortex-A7) (orangepi-pc)",
                @"Palm Tungsten|E aka. Cheetah PDA (OMAP310) (cheetah)",
                @"QEMU 'SBSA Reference' ARM Virtual Machine (sbsa-ref)",
                @"QEMU 2.10 ARM Virtual Machine (virt-2.10)",
                @"QEMU 2.11 ARM Virtual Machine (virt-2.11)",
                @"QEMU 2.12 ARM Virtual Machine (virt-2.12)",
                @"QEMU 2.6 ARM Virtual Machine (virt-2.6)",
                @"QEMU 2.7 ARM Virtual Machine (virt-2.7)",
                @"QEMU 2.8 ARM Virtual Machine (virt-2.8)",
                @"QEMU 2.9 ARM Virtual Machine (virt-2.9)",
                @"QEMU 3.0 ARM Virtual Machine (virt-3.0)",
                @"QEMU 3.1 ARM Virtual Machine (virt-3.1)",
                @"QEMU 4.0 ARM Virtual Machine (virt-4.0)",
                @"QEMU 4.1 ARM Virtual Machine (virt-4.1)",
                @"QEMU 4.2 ARM Virtual Machine (virt-4.2)",
                @"QEMU 5.0 ARM Virtual Machine (virt-5.0)",
                @"QEMU 5.1 ARM Virtual Machine (virt-5.1)",
                @"QEMU 5.2 ARM Virtual Machine (virt-5.2)",
                @"QEMU 6.0 ARM Virtual Machine (virt-6.0)",
                @"QEMU 6.1 ARM Virtual Machine (virt-6.1)",
                @"QEMU 6.2 ARM Virtual Machine (alias of virt-6.2) (virt)",
                @"QEMU 6.2 ARM Virtual Machine (virt-6.2)",
                @"Quanta GBS (Cortex-A9) (quanta-gbs-bmc)",
                @"Quanta GSJ (Cortex-A9) (quanta-gsj)",
                @"Quanta-Q71l BMC (ARM926EJ-S) (quanta-q71l-bmc)",
                @"Raspberry Pi 2B (revision 1.1) (raspi2b)",
                @"Raspberry Pi 3A+ (revision 1.0) (raspi3ap)",
                @"Raspberry Pi 3B (revision 1.2) (raspi3b)",
                @"Raspberry Pi A+ (revision 1.1) (raspi1ap)",
                @"Raspberry Pi Zero (revision 1.2) (raspi0)",
                @"ST STM32VLDISCOVERY (Cortex-M3) (stm32vldiscovery)",
                @"Samsung NURI board (Exynos4210) (nuri)",
                @"Samsung SMDKC210 board (Exynos4210) (smdkc210)",
                @"Sharp SL-5500 (Collie) PDA (SA-1110) (collie)",
                @"Sharp SL-6000 (Tosa) PDA (PXA255) (tosa)",
                @"Sharp SL-C1000 (Akita) PDA (PXA270) (akita)",
                @"Sharp SL-C3000 (Spitz) PDA (PXA270) (spitz)",
                @"Sharp SL-C3100 (Borzoi) PDA (PXA270) (borzoi)",
                @"Sharp SL-C3200 (Terrier) PDA (PXA270) (terrier)",
                @"Siemens SX1 (OMAP310) V1 (sx1-v1)",
                @"Siemens SX1 (OMAP310) V2 (sx1)",
                @"SmartFusion2 SOM kit from Emcraft (M2S010) (emcraft-sf2)",
                @"Stellaris LM3S6965EVB (Cortex-M3) (lm3s6965evb)",
                @"Stellaris LM3S811EVB (Cortex-M3) (lm3s811evb)",
                @"Supermicro X11 BMC (ARM926EJ-S) (supermicrox11-bmc)",
                @"Xilinx Versal Virtual development board (xlnx-versal-virt)",
                @"Xilinx Zynq Platform Baseboard for Cortex-A9 (xilinx-zynq-a9)",
                @"Xilinx ZynqMP ZCU102 board with 4xA53s and 2xR5Fs based on the value of smp (xlnx-zcu102)",
                @"Zipit Z2 (PXA27x) (z2)",
                @"cubietech cubieboard (Cortex-A8) (cubieboard)",
                @"empty machine (none)",
            ],
        @"avr":
            @[
                @"Arduino Duemilanove (ATmega168) (alias of arduino-duemilanove) (2009)",
                @"Arduino Duemilanove (ATmega168) (arduino-duemilanove)",
                @"Arduino Mega (ATmega1280) (alias of arduino-mega) (mega)",
                @"Arduino Mega (ATmega1280) (arduino-mega)",
                @"Arduino Mega 2560 (ATmega2560) (alias of arduino-mega-2560-v3) (mega2560)",
                @"Arduino Mega 2560 (ATmega2560) (arduino-mega-2560-v3)",
                @"Arduino UNO (ATmega328P) (alias of arduino-uno) (uno)",
                @"Arduino UNO (ATmega328P) (arduino-uno)",
                @"empty machine (none)",
            ],
        @"cris":
            @[
                @"AXIS devboard 88 (default) (axis-dev88)",
                @"empty machine (none)",
            ],
        @"hppa":
            @[
                @"HPPA generic machine (default) (hppa)",
                @"empty machine (none)",
            ],
        @"i386":
            @[
                @"ISA-only PC (isapc)",
                @"Standard PC (Q35 + ICH9, 2009) (alias of pc-q35-6.2) (q35)",
                @"Standard PC (Q35 + ICH9, 2009) (pc-q35-2.10)",
                @"Standard PC (Q35 + ICH9, 2009) (pc-q35-2.11)",
                @"Standard PC (Q35 + ICH9, 2009) (pc-q35-2.12)",
                @"Standard PC (Q35 + ICH9, 2009) (pc-q35-2.4)",
                @"Standard PC (Q35 + ICH9, 2009) (pc-q35-2.5)",
                @"Standard PC (Q35 + ICH9, 2009) (pc-q35-2.6)",
                @"Standard PC (Q35 + ICH9, 2009) (pc-q35-2.7)",
                @"Standard PC (Q35 + ICH9, 2009) (pc-q35-2.8)",
                @"Standard PC (Q35 + ICH9, 2009) (pc-q35-2.9)",
                @"Standard PC (Q35 + ICH9, 2009) (pc-q35-3.0)",
                @"Standard PC (Q35 + ICH9, 2009) (pc-q35-3.1)",
                @"Standard PC (Q35 + ICH9, 2009) (pc-q35-4.0)",
                @"Standard PC (Q35 + ICH9, 2009) (pc-q35-4.0.1)",
                @"Standard PC (Q35 + ICH9, 2009) (pc-q35-4.1)",
                @"Standard PC (Q35 + ICH9, 2009) (pc-q35-4.2)",
                @"Standard PC (Q35 + ICH9, 2009) (pc-q35-5.0)",
                @"Standard PC (Q35 + ICH9, 2009) (pc-q35-5.1)",
                @"Standard PC (Q35 + ICH9, 2009) (pc-q35-5.2)",
                @"Standard PC (Q35 + ICH9, 2009) (pc-q35-6.0)",
                @"Standard PC (Q35 + ICH9, 2009) (pc-q35-6.1)",
                @"Standard PC (Q35 + ICH9, 2009) (pc-q35-6.2)",
                @"Standard PC (i440FX + PIIX, 1996) (alias of pc-i440fx-6.2) (pc)",
                @"Standard PC (i440FX + PIIX, 1996) (default) (pc-i440fx-6.2)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-1.4)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-1.5)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-1.6)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-1.7)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-2.0)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-2.1)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-2.10)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-2.11)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-2.12)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-2.2)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-2.3)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-2.4)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-2.5)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-2.6)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-2.7)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-2.8)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-2.9)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-3.0)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-3.1)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-4.0)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-4.1)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-4.2)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-5.0)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-5.1)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-5.2)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-6.0)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-6.1)",
                @"empty machine (none)",
                @"microvm (i386) (microvm)",
            ],
        @"m68k":
            @[
                @"Arnewsh 5206 (an5206)",
                @"MCF5208EVB (default) (mcf5208evb)",
                @"Macintosh Quadra 800 (q800)",
                @"NeXT Cube (next-cube)",
                @"QEMU 6.0 M68K Virtual Machine (virt-6.0)",
                @"QEMU 6.1 M68K Virtual Machine (virt-6.1)",
                @"QEMU 6.2 M68K Virtual Machine (alias of virt-6.2) (virt)",
                @"QEMU 6.2 M68K Virtual Machine (virt-6.2)",
                @"empty machine (none)",
            ],
        @"microblaze":
            @[
                @"PetaLogix linux refdesign for xilinx Spartan 3ADSP1800 (default) (petalogix-s3adsp1800)",
                @"PetaLogix linux refdesign for xilinx ml605 little endian (petalogix-ml605)",
                @"Xilinx ZynqMP PMU machine (xlnx-zynqmp-pmu)",
                @"empty machine (none)",
            ],
        @"microblazeel":
            @[
                @"PetaLogix linux refdesign for xilinx Spartan 3ADSP1800 (default) (petalogix-s3adsp1800)",
                @"PetaLogix linux refdesign for xilinx ml605 little endian (petalogix-ml605)",
                @"Xilinx ZynqMP PMU machine (xlnx-zynqmp-pmu)",
                @"empty machine (none)",
            ],
        @"mips":
            @[
                @"MIPS MIPSsim platform (mipssim)",
                @"MIPS Malta Core LV (default) (malta)",
                @"empty machine (none)",
            ],
        @"mipsel":
            @[
                @"MIPS MIPSsim platform (mipssim)",
                @"MIPS Malta Core LV (default) (malta)",
                @"empty machine (none)",
            ],
        @"mips64":
            @[
                @"Acer Pica 61 (pica61)",
                @"MIPS MIPSsim platform (mipssim)",
                @"MIPS Magnum (magnum)",
                @"MIPS Malta Core LV (default) (malta)",
                @"empty machine (none)",
            ],
        @"mips64el":
            @[
                @"Acer Pica 61 (pica61)",
                @"Fuloong 2e mini pc (fuloong2e)",
                @"Loongson-3 Virtualization Platform (loongson3-virt)",
                @"MIPS Boston (boston)",
                @"MIPS MIPSsim platform (mipssim)",
                @"MIPS Magnum (magnum)",
                @"MIPS Malta Core LV (default) (malta)",
                @"empty machine (none)",
            ],
        @"nios2":
            @[
                @"Altera 10M50 GHRD Nios II design (default) (10m50-ghrd)",
                @"Generic NOMMU Nios II design (nios2-generic-nommu)",
                @"empty machine (none)",
            ],
        @"or1k":
            @[
                @"empty machine (none)",
                @"or1k simulation (default) (or1k-sim)",
            ],
        @"ppc":
            @[
                @"Genesi/bPlan Pegasos II (pegasos2)",
                @"Heathrow based PowerMAC (default) (g3beige)",
                @"IBM RS/6000 7020 (40p) (40p)",
                @"Mac99 based PowerMAC (mac99)",
                @"Xilinx Virtex ML507 reference design (virtex-ml507)",
                @"aCube Sam460ex (sam460ex)",
                @"bamboo (bamboo)",
                @"empty machine (none)",
                @"generic paravirt e500 platform (ppce500)",
                @"mpc8544ds (mpc8544ds)",
                @"ref405ep (ref405ep)",
                @"taihu (taihu)",
            ],
        @"ppc64":
            @[
                @"Genesi/bPlan Pegasos II (pegasos2)",
                @"Heathrow based PowerMAC (g3beige)",
                @"IBM PowerNV (Non-Virtualized) POWER10 (powernv10)",
                @"IBM PowerNV (Non-Virtualized) POWER8 (powernv8)",
                @"IBM PowerNV (Non-Virtualized) POWER9 (alias of powernv9) (powernv)",
                @"IBM PowerNV (Non-Virtualized) POWER9 (powernv9)",
                @"IBM RS/6000 7020 (40p) (40p)",
                @"Mac99 based PowerMAC (mac99)",
                @"Xilinx Virtex ML507 reference design (virtex-ml507)",
                @"aCube Sam460ex (sam460ex)",
                @"bamboo (bamboo)",
                @"empty machine (none)",
                @"generic paravirt e500 platform (ppce500)",
                @"mpc8544ds (mpc8544ds)",
                @"pSeries Logical Partition (PAPR compliant) (alias of pseries-6.2) (pseries)",
                @"pSeries Logical Partition (PAPR compliant) (default) (pseries-6.2)",
                @"pSeries Logical Partition (PAPR compliant) (pseries-2.1)",
                @"pSeries Logical Partition (PAPR compliant) (pseries-2.10)",
                @"pSeries Logical Partition (PAPR compliant) (pseries-2.11)",
                @"pSeries Logical Partition (PAPR compliant) (pseries-2.12)",
                @"pSeries Logical Partition (PAPR compliant) (pseries-2.12-sxxm)",
                @"pSeries Logical Partition (PAPR compliant) (pseries-2.2)",
                @"pSeries Logical Partition (PAPR compliant) (pseries-2.3)",
                @"pSeries Logical Partition (PAPR compliant) (pseries-2.4)",
                @"pSeries Logical Partition (PAPR compliant) (pseries-2.5)",
                @"pSeries Logical Partition (PAPR compliant) (pseries-2.6)",
                @"pSeries Logical Partition (PAPR compliant) (pseries-2.7)",
                @"pSeries Logical Partition (PAPR compliant) (pseries-2.8)",
                @"pSeries Logical Partition (PAPR compliant) (pseries-2.9)",
                @"pSeries Logical Partition (PAPR compliant) (pseries-3.0)",
                @"pSeries Logical Partition (PAPR compliant) (pseries-3.1)",
                @"pSeries Logical Partition (PAPR compliant) (pseries-4.0)",
                @"pSeries Logical Partition (PAPR compliant) (pseries-4.1)",
                @"pSeries Logical Partition (PAPR compliant) (pseries-4.2)",
                @"pSeries Logical Partition (PAPR compliant) (pseries-5.0)",
                @"pSeries Logical Partition (PAPR compliant) (pseries-5.1)",
                @"pSeries Logical Partition (PAPR compliant) (pseries-5.2)",
                @"pSeries Logical Partition (PAPR compliant) (pseries-6.0)",
                @"pSeries Logical Partition (PAPR compliant) (pseries-6.1)",
                @"ref405ep (ref405ep)",
                @"taihu (taihu)",
            ],
        @"riscv32":
            @[
                @"RISC-V Board compatible with OpenTitan (opentitan)",
                @"RISC-V Board compatible with SiFive E SDK (sifive_e)",
                @"RISC-V Board compatible with SiFive U SDK (sifive_u)",
                @"RISC-V Spike board (default) (spike)",
                @"RISC-V VirtIO board (virt)",
                @"empty machine (none)",
            ],
        @"riscv64":
            @[
                @"Microchip PolarFire SoC Icicle Kit (microchip-icicle-kit)",
                @"RISC-V Board compatible with Shakti SDK (shakti_c)",
                @"RISC-V Board compatible with SiFive E SDK (sifive_e)",
                @"RISC-V Board compatible with SiFive U SDK (sifive_u)",
                @"RISC-V Spike board (default) (spike)",
                @"RISC-V VirtIO board (virt)",
                @"empty machine (none)",
            ],
        @"rx":
            @[
                @"empty machine (none)",
                @"gdb simulator (R5F562N7 MCU and external RAM) (gdbsim-r5f562n7)",
                @"gdb simulator (R5F562N8 MCU and external RAM) (gdbsim-r5f562n8)",
            ],
        @"s390x":
            @[
                @"VirtIO-ccw based S390 machine v2.10 (s390-ccw-virtio-2.10)",
                @"VirtIO-ccw based S390 machine v2.11 (s390-ccw-virtio-2.11)",
                @"VirtIO-ccw based S390 machine v2.12 (s390-ccw-virtio-2.12)",
                @"VirtIO-ccw based S390 machine v2.4 (s390-ccw-virtio-2.4)",
                @"VirtIO-ccw based S390 machine v2.5 (s390-ccw-virtio-2.5)",
                @"VirtIO-ccw based S390 machine v2.6 (s390-ccw-virtio-2.6)",
                @"VirtIO-ccw based S390 machine v2.7 (s390-ccw-virtio-2.7)",
                @"VirtIO-ccw based S390 machine v2.8 (s390-ccw-virtio-2.8)",
                @"VirtIO-ccw based S390 machine v2.9 (s390-ccw-virtio-2.9)",
                @"VirtIO-ccw based S390 machine v3.0 (s390-ccw-virtio-3.0)",
                @"VirtIO-ccw based S390 machine v3.1 (s390-ccw-virtio-3.1)",
                @"VirtIO-ccw based S390 machine v4.0 (s390-ccw-virtio-4.0)",
                @"VirtIO-ccw based S390 machine v4.1 (s390-ccw-virtio-4.1)",
                @"VirtIO-ccw based S390 machine v4.2 (s390-ccw-virtio-4.2)",
                @"VirtIO-ccw based S390 machine v5.0 (s390-ccw-virtio-5.0)",
                @"VirtIO-ccw based S390 machine v5.1 (s390-ccw-virtio-5.1)",
                @"VirtIO-ccw based S390 machine v5.2 (s390-ccw-virtio-5.2)",
                @"VirtIO-ccw based S390 machine v6.0 (s390-ccw-virtio-6.0)",
                @"VirtIO-ccw based S390 machine v6.1 (s390-ccw-virtio-6.1)",
                @"VirtIO-ccw based S390 machine v6.2 (alias of s390-ccw-virtio-6.2) (s390-ccw-virtio)",
                @"VirtIO-ccw based S390 machine v6.2 (default) (s390-ccw-virtio-6.2)",
                @"empty machine (none)",
            ],
        @"sh4":
            @[
                @"empty machine (none)",
                @"r2d-plus board (r2d)",
                @"shix card (default) (shix)",
            ],
        @"sh4eb":
            @[
                @"empty machine (none)",
                @"r2d-plus board (r2d)",
                @"shix card (default) (shix)",
            ],
        @"sparc":
            @[
                @"Leon-3 generic (leon3_generic)",
                @"Sun4m platform, SPARCClassic (SPARCClassic)",
                @"Sun4m platform, SPARCbook (SPARCbook)",
                @"Sun4m platform, SPARCserver 600MP (SS-600MP)",
                @"Sun4m platform, SPARCstation 10 (SS-10)",
                @"Sun4m platform, SPARCstation 20 (SS-20)",
                @"Sun4m platform, SPARCstation 4 (SS-4)",
                @"Sun4m platform, SPARCstation 5 (default) (SS-5)",
                @"Sun4m platform, SPARCstation LX (LX)",
                @"Sun4m platform, SPARCstation Voyager (Voyager)",
                @"empty machine (none)",
            ],
        @"sparc64":
            @[
                @"Sun4u platform (default) (sun4u)",
                @"Sun4v platform (sun4v)",
                @"Sun4v platform, Niagara (niagara)",
                @"empty machine (none)",
            ],
        @"tricore":
            @[
                @"Infineon AURIX TriBoard TC277 (D-Step) (KIT_AURIX_TC277_TRB)",
                @"a minimal TriCore board (tricore_testboard)",
                @"empty machine (none)",
            ],
        @"x86_64":
            @[
                @"ISA-only PC (isapc)",
                @"Standard PC (Q35 + ICH9, 2009) (alias of pc-q35-6.2) (q35)",
                @"Standard PC (Q35 + ICH9, 2009) (pc-q35-2.10)",
                @"Standard PC (Q35 + ICH9, 2009) (pc-q35-2.11)",
                @"Standard PC (Q35 + ICH9, 2009) (pc-q35-2.12)",
                @"Standard PC (Q35 + ICH9, 2009) (pc-q35-2.4)",
                @"Standard PC (Q35 + ICH9, 2009) (pc-q35-2.5)",
                @"Standard PC (Q35 + ICH9, 2009) (pc-q35-2.6)",
                @"Standard PC (Q35 + ICH9, 2009) (pc-q35-2.7)",
                @"Standard PC (Q35 + ICH9, 2009) (pc-q35-2.8)",
                @"Standard PC (Q35 + ICH9, 2009) (pc-q35-2.9)",
                @"Standard PC (Q35 + ICH9, 2009) (pc-q35-3.0)",
                @"Standard PC (Q35 + ICH9, 2009) (pc-q35-3.1)",
                @"Standard PC (Q35 + ICH9, 2009) (pc-q35-4.0)",
                @"Standard PC (Q35 + ICH9, 2009) (pc-q35-4.0.1)",
                @"Standard PC (Q35 + ICH9, 2009) (pc-q35-4.1)",
                @"Standard PC (Q35 + ICH9, 2009) (pc-q35-4.2)",
                @"Standard PC (Q35 + ICH9, 2009) (pc-q35-5.0)",
                @"Standard PC (Q35 + ICH9, 2009) (pc-q35-5.1)",
                @"Standard PC (Q35 + ICH9, 2009) (pc-q35-5.2)",
                @"Standard PC (Q35 + ICH9, 2009) (pc-q35-6.0)",
                @"Standard PC (Q35 + ICH9, 2009) (pc-q35-6.1)",
                @"Standard PC (Q35 + ICH9, 2009) (pc-q35-6.2)",
                @"Standard PC (i440FX + PIIX, 1996) (alias of pc-i440fx-6.2) (pc)",
                @"Standard PC (i440FX + PIIX, 1996) (default) (pc-i440fx-6.2)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-1.4)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-1.5)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-1.6)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-1.7)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-2.0)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-2.1)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-2.10)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-2.11)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-2.12)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-2.2)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-2.3)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-2.4)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-2.5)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-2.6)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-2.7)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-2.8)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-2.9)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-3.0)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-3.1)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-4.0)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-4.1)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-4.2)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-5.0)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-5.1)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-5.2)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-6.0)",
                @"Standard PC (i440FX + PIIX, 1996) (pc-i440fx-6.1)",
                @"empty machine (none)",
                @"microvm (i386) (microvm)",
            ],
        @"xtensa":
            @[
                @"empty machine (none)",
                @"kc705 EVB (dc232b) (kc705)",
                @"kc705 noMMU EVB (de212) (kc705-nommu)",
                @"lx200 EVB (dc232b) (lx200)",
                @"lx200 noMMU EVB (de212) (lx200-nommu)",
                @"lx60 EVB (dc232b) (lx60)",
                @"lx60 noMMU EVB (de212) (lx60-nommu)",
                @"ml605 EVB (dc232b) (ml605)",
                @"ml605 noMMU EVB (de212) (ml605-nommu)",
                @"sim machine (dc232b) (default) (sim)",
                @"virt machine (dc232b) (virt)",
            ],
        @"xtensaeb":
            @[
                @"empty machine (none)",
                @"kc705 EVB (fsf) (kc705)",
                @"kc705 noMMU EVB (fsf) (kc705-nommu)",
                @"lx200 EVB (fsf) (lx200)",
                @"lx200 noMMU EVB (fsf) (lx200-nommu)",
                @"lx60 EVB (fsf) (lx60)",
                @"lx60 noMMU EVB (fsf) (lx60-nommu)",
                @"ml605 EVB (fsf) (ml605)",
                @"ml605 noMMU EVB (fsf) (ml605-nommu)",
                @"sim machine (fsf) (default) (sim)",
                @"virt machine (fsf) (virt)",
            ],
    }[architecture];
}

+ (NSInteger)defaultTargetIndexForArchitecture:(NSString *)architecture {
    return [@{
        @"alpha": @0,
        @"arm": @69,
        @"aarch64": @70,
        @"avr": @2,
        @"cris": @0,
        @"hppa": @0,
        @"i386": @1,
        @"m68k": @1,
        @"microblaze": @0,
        @"microblazeel": @0,
        @"mips": @1,
        @"mipsel": @1,
        @"mips64": @3,
        @"mips64el": @6,
        @"nios2": @0,
        @"or1k": @1,
        @"ppc": @1,
        @"ppc64": @15,
        @"riscv32": @3,
        @"riscv64": @4,
        @"rx": @1,
        @"s390x": @20,
        @"sh4": @2,
        @"sh4eb": @2,
        @"sparc": @7,
        @"sparc64": @0,
        @"tricore": @1,
        @"x86_64": @1,
        @"xtensa": @9,
        @"xtensaeb": @9,
    }[architecture] integerValue];
}

+ (NSArray<NSString *>*)supportedDisplayCardsForArchitecture:(NSString *)architecture {
    return @{
        @"alpha":
            @[
                @"cirrus-vga",
                @"VGA",
                @"ati-vga",
                @"bochs-display",
                @"secondary-vga",
                @"virtio-gpu-device",
                @"virtio-gpu-gl-device",
                @"virtio-gpu-gl-pci",
                @"virtio-gpu-pci",
                @"vmware-svga",
            ],
        @"arm":
            @[
                @"cirrus-vga",
                @"led",
                @"VGA",
                @"ati-vga",
                @"bochs-display",
                @"ramfb",
                @"secondary-vga",
                @"ssd0323",
                @"virtio-gpu-device",
                @"virtio-gpu-gl-device",
                @"virtio-gpu-gl-pci",
                @"virtio-gpu-pci",
                @"virtio-ramfb",
                @"virtio-ramfb-gl",
                @"vmware-svga",
            ],
        @"aarch64":
            @[
                @"cirrus-vga",
                @"led",
                @"VGA",
                @"ati-vga",
                @"bochs-display",
                @"ramfb",
                @"secondary-vga",
                @"ssd0323",
                @"virtio-gpu-device",
                @"virtio-gpu-gl-device",
                @"virtio-gpu-gl-pci",
                @"virtio-gpu-pci",
                @"virtio-ramfb",
                @"virtio-ramfb-gl",
                @"vmware-svga",
            ],
        @"avr":
            @[
            ],
        @"cris":
            @[
            ],
        @"hppa":
            @[
                @"cirrus-vga",
                @"VGA",
                @"ati-vga",
                @"bochs-display",
                @"secondary-vga",
                @"virtio-gpu-device",
                @"virtio-gpu-gl-device",
                @"virtio-gpu-gl-pci",
                @"virtio-gpu-pci",
                @"virtio-vga",
                @"virtio-vga-gl",
                @"vmware-svga",
            ],
        @"i386":
            @[
                @"cirrus-vga",
                @"sga",
                @"qxl-vga",
                @"qxl",
                @"VGA",
                @"ati-vga",
                @"bochs-display",
                @"isa-cirrus-vga",
                @"isa-vga",
                @"ramfb",
                @"secondary-vga",
                @"virtio-gpu-device",
                @"virtio-gpu-gl-device",
                @"virtio-gpu-gl-pci",
                @"virtio-gpu-pci",
                @"virtio-ramfb",
                @"virtio-ramfb-gl",
                @"virtio-vga",
                @"virtio-vga-gl",
                @"vmware-svga",
            ],
        @"m68k":
            @[
                @"nubus-macfb",
                @"virtio-gpu-device",
                @"virtio-gpu-gl-device",
            ],
        @"microblaze":
            @[
            ],
        @"microblazeel":
            @[
            ],
        @"mips":
            @[
                @"cirrus-vga",
                @"VGA",
                @"ati-vga",
                @"bochs-display",
                @"isa-cirrus-vga",
                @"isa-vga",
                @"secondary-vga",
                @"virtio-gpu-device",
                @"virtio-gpu-gl-device",
                @"virtio-gpu-gl-pci",
                @"virtio-gpu-pci",
                @"vmware-svga",
            ],
        @"mipsel":
            @[
                @"cirrus-vga",
                @"VGA",
                @"ati-vga",
                @"bochs-display",
                @"isa-cirrus-vga",
                @"isa-vga",
                @"secondary-vga",
                @"virtio-gpu-device",
                @"virtio-gpu-gl-device",
                @"virtio-gpu-gl-pci",
                @"virtio-gpu-pci",
                @"vmware-svga",
            ],
        @"mips64":
            @[
                @"cirrus-vga",
                @"VGA",
                @"ati-vga",
                @"bochs-display",
                @"isa-cirrus-vga",
                @"isa-vga",
                @"secondary-vga",
                @"virtio-gpu-device",
                @"virtio-gpu-gl-device",
                @"virtio-gpu-gl-pci",
                @"virtio-gpu-pci",
                @"vmware-svga",
            ],
        @"mips64el":
            @[
                @"cirrus-vga",
                @"qxl-vga",
                @"qxl",
                @"VGA",
                @"ati-vga",
                @"bochs-display",
                @"isa-cirrus-vga",
                @"isa-vga",
                @"secondary-vga",
                @"virtio-gpu-device",
                @"virtio-gpu-gl-device",
                @"virtio-gpu-gl-pci",
                @"virtio-gpu-pci",
                @"virtio-vga",
                @"virtio-vga-gl",
                @"vmware-svga",
            ],
        @"nios2":
            @[
            ],
        @"or1k":
            @[
            ],
        @"ppc":
            @[
                @"cirrus-vga",
                @"sm501",
                @"VGA",
                @"ati-vga",
                @"bochs-display",
                @"secondary-vga",
                @"virtio-gpu-device",
                @"virtio-gpu-gl-device",
                @"virtio-gpu-gl-pci",
                @"virtio-gpu-pci",
                @"vmware-svga",
            ],
        @"ppc64":
            @[
                @"cirrus-vga",
                @"sm501",
                @"VGA",
                @"ati-vga",
                @"bochs-display",
                @"secondary-vga",
                @"virtio-gpu-device",
                @"virtio-gpu-gl-device",
                @"virtio-gpu-gl-pci",
                @"virtio-gpu-pci",
                @"virtio-vga",
                @"virtio-vga-gl",
                @"vmware-svga",
            ],
        @"riscv32":
            @[
                @"cirrus-vga",
                @"VGA",
                @"ati-vga",
                @"bochs-display",
                @"ramfb",
                @"secondary-vga",
                @"virtio-gpu-device",
                @"virtio-gpu-gl-device",
                @"virtio-gpu-gl-pci",
                @"virtio-gpu-pci",
                @"virtio-ramfb",
                @"virtio-ramfb-gl",
                @"virtio-vga",
                @"virtio-vga-gl",
                @"vmware-svga",
            ],
        @"riscv64":
            @[
                @"cirrus-vga",
                @"VGA",
                @"ati-vga",
                @"bochs-display",
                @"ramfb",
                @"secondary-vga",
                @"virtio-gpu-device",
                @"virtio-gpu-gl-device",
                @"virtio-gpu-gl-pci",
                @"virtio-gpu-pci",
                @"virtio-ramfb",
                @"virtio-ramfb-gl",
                @"virtio-vga",
                @"virtio-vga-gl",
                @"vmware-svga",
            ],
        @"rx":
            @[
            ],
        @"s390x":
            @[
                @"virtio-gpu-ccw",
                @"virtio-gpu-device",
                @"virtio-gpu-gl-device",
                @"virtio-gpu-gl-pci",
                @"virtio-gpu-pci",
                @"x-terminal3270",
            ],
        @"sh4":
            @[
                @"cirrus-vga",
                @"sm501",
                @"VGA",
                @"ati-vga",
                @"bochs-display",
                @"secondary-vga",
                @"virtio-gpu-device",
                @"virtio-gpu-gl-device",
                @"virtio-gpu-gl-pci",
                @"virtio-gpu-pci",
                @"vmware-svga",
            ],
        @"sh4eb":
            @[
                @"cirrus-vga",
                @"sm501",
                @"VGA",
                @"ati-vga",
                @"bochs-display",
                @"secondary-vga",
                @"virtio-gpu-device",
                @"virtio-gpu-gl-device",
                @"virtio-gpu-gl-pci",
                @"virtio-gpu-pci",
                @"vmware-svga",
            ],
        @"sparc":
            @[
                @"tcx",
                @"cg3",
            ],
        @"sparc64":
            @[
                @"cirrus-vga",
                @"VGA",
                @"ati-vga",
                @"bochs-display",
                @"secondary-vga",
                @"virtio-gpu-device",
                @"virtio-gpu-gl-device",
                @"virtio-gpu-gl-pci",
                @"virtio-gpu-pci",
                @"vmware-svga",
            ],
        @"tricore":
            @[
            ],
        @"x86_64":
            @[
                @"cirrus-vga",
                @"sga",
                @"qxl-vga",
                @"qxl",
                @"VGA",
                @"ati-vga",
                @"bochs-display",
                @"isa-cirrus-vga",
                @"isa-vga",
                @"ramfb",
                @"secondary-vga",
                @"virtio-gpu-device",
                @"virtio-gpu-gl-device",
                @"virtio-gpu-gl-pci",
                @"virtio-gpu-pci",
                @"virtio-ramfb",
                @"virtio-ramfb-gl",
                @"virtio-vga",
                @"virtio-vga-gl",
                @"vmware-svga",
            ],
        @"xtensa":
            @[
                @"cirrus-vga",
                @"VGA",
                @"ati-vga",
                @"bochs-display",
                @"secondary-vga",
                @"virtio-gpu-device",
                @"virtio-gpu-gl-device",
                @"virtio-gpu-gl-pci",
                @"virtio-gpu-pci",
                @"vmware-svga",
            ],
        @"xtensaeb":
            @[
                @"cirrus-vga",
                @"VGA",
                @"ati-vga",
                @"bochs-display",
                @"secondary-vga",
                @"virtio-gpu-device",
                @"virtio-gpu-gl-device",
                @"virtio-gpu-gl-pci",
                @"virtio-gpu-pci",
                @"vmware-svga",
            ],
    }[architecture];
}

+ (NSArray<NSString *>*)supportedDisplayCardsForArchitecturePretty:(NSString *)architecture {
    return @{
        @"alpha":
            @[
                @"Cirrus CLGD 54xx VGA (cirrus-vga)",
                @"VGA",
                @"ati-vga",
                @"bochs-display",
                @"secondary-vga",
                @"virtio-gpu-device",
                @"virtio-gpu-gl-device (GPU Supported)",
                @"virtio-gpu-gl-pci (GPU Supported)",
                @"virtio-gpu-pci",
                @"vmware-svga",
            ],
        @"arm":
            @[
                @"Cirrus CLGD 54xx VGA (cirrus-vga)",
                @"LED (led)",
                @"VGA",
                @"ati-vga",
                @"bochs-display",
                @"ram framebuffer standalone device (ramfb)",
                @"secondary-vga",
                @"ssd0323",
                @"virtio-gpu-device",
                @"virtio-gpu-gl-device (GPU Supported)",
                @"virtio-gpu-gl-pci (GPU Supported)",
                @"virtio-gpu-pci",
                @"virtio-ramfb",
                @"virtio-ramfb-gl (GPU Supported)",
                @"vmware-svga",
            ],
        @"aarch64":
            @[
                @"Cirrus CLGD 54xx VGA (cirrus-vga)",
                @"LED (led)",
                @"VGA",
                @"ati-vga",
                @"bochs-display",
                @"ram framebuffer standalone device (ramfb)",
                @"secondary-vga",
                @"ssd0323",
                @"virtio-gpu-device",
                @"virtio-gpu-gl-device (GPU Supported)",
                @"virtio-gpu-gl-pci (GPU Supported)",
                @"virtio-gpu-pci",
                @"virtio-ramfb",
                @"virtio-ramfb-gl (GPU Supported)",
                @"vmware-svga",
            ],
        @"avr":
            @[
            ],
        @"cris":
            @[
            ],
        @"hppa":
            @[
                @"Cirrus CLGD 54xx VGA (cirrus-vga)",
                @"VGA",
                @"ati-vga",
                @"bochs-display",
                @"secondary-vga",
                @"virtio-gpu-device",
                @"virtio-gpu-gl-device (GPU Supported)",
                @"virtio-gpu-gl-pci (GPU Supported)",
                @"virtio-gpu-pci",
                @"virtio-vga",
                @"virtio-vga-gl (GPU Supported)",
                @"vmware-svga",
            ],
        @"i386":
            @[
                @"Cirrus CLGD 54xx VGA (cirrus-vga)",
                @"Serial Graphics Adapter (sga)",
                @"Spice QXL GPU (primary, vga compatible) (qxl-vga)",
                @"Spice QXL GPU (secondary) (qxl)",
                @"VGA",
                @"ati-vga",
                @"bochs-display",
                @"isa-cirrus-vga",
                @"isa-vga",
                @"ram framebuffer standalone device (ramfb)",
                @"secondary-vga",
                @"virtio-gpu-device",
                @"virtio-gpu-gl-device (GPU Supported)",
                @"virtio-gpu-gl-pci (GPU Supported)",
                @"virtio-gpu-pci",
                @"virtio-ramfb",
                @"virtio-ramfb-gl (GPU Supported)",
                @"virtio-vga",
                @"virtio-vga-gl (GPU Supported)",
                @"vmware-svga",
            ],
        @"m68k":
            @[
                @"Nubus Macintosh framebuffer (nubus-macfb)",
                @"virtio-gpu-device",
                @"virtio-gpu-gl-device (GPU Supported)",
            ],
        @"microblaze":
            @[
            ],
        @"microblazeel":
            @[
            ],
        @"mips":
            @[
                @"Cirrus CLGD 54xx VGA (cirrus-vga)",
                @"VGA",
                @"ati-vga",
                @"bochs-display",
                @"isa-cirrus-vga",
                @"isa-vga",
                @"secondary-vga",
                @"virtio-gpu-device",
                @"virtio-gpu-gl-device (GPU Supported)",
                @"virtio-gpu-gl-pci (GPU Supported)",
                @"virtio-gpu-pci",
                @"vmware-svga",
            ],
        @"mipsel":
            @[
                @"Cirrus CLGD 54xx VGA (cirrus-vga)",
                @"VGA",
                @"ati-vga",
                @"bochs-display",
                @"isa-cirrus-vga",
                @"isa-vga",
                @"secondary-vga",
                @"virtio-gpu-device",
                @"virtio-gpu-gl-device (GPU Supported)",
                @"virtio-gpu-gl-pci (GPU Supported)",
                @"virtio-gpu-pci",
                @"vmware-svga",
            ],
        @"mips64":
            @[
                @"Cirrus CLGD 54xx VGA (cirrus-vga)",
                @"VGA",
                @"ati-vga",
                @"bochs-display",
                @"isa-cirrus-vga",
                @"isa-vga",
                @"secondary-vga",
                @"virtio-gpu-device",
                @"virtio-gpu-gl-device (GPU Supported)",
                @"virtio-gpu-gl-pci (GPU Supported)",
                @"virtio-gpu-pci",
                @"vmware-svga",
            ],
        @"mips64el":
            @[
                @"Cirrus CLGD 54xx VGA (cirrus-vga)",
                @"Spice QXL GPU (primary, vga compatible) (qxl-vga)",
                @"Spice QXL GPU (secondary) (qxl)",
                @"VGA",
                @"ati-vga",
                @"bochs-display",
                @"isa-cirrus-vga",
                @"isa-vga",
                @"secondary-vga",
                @"virtio-gpu-device",
                @"virtio-gpu-gl-device (GPU Supported)",
                @"virtio-gpu-gl-pci (GPU Supported)",
                @"virtio-gpu-pci",
                @"virtio-vga",
                @"virtio-vga-gl (GPU Supported)",
                @"vmware-svga",
            ],
        @"nios2":
            @[
            ],
        @"or1k":
            @[
            ],
        @"ppc":
            @[
                @"Cirrus CLGD 54xx VGA (cirrus-vga)",
                @"SM501 Display Controller (sm501)",
                @"VGA",
                @"ati-vga",
                @"bochs-display",
                @"secondary-vga",
                @"virtio-gpu-device",
                @"virtio-gpu-gl-device (GPU Supported)",
                @"virtio-gpu-gl-pci (GPU Supported)",
                @"virtio-gpu-pci",
                @"vmware-svga",
            ],
        @"ppc64":
            @[
                @"Cirrus CLGD 54xx VGA (cirrus-vga)",
                @"SM501 Display Controller (sm501)",
                @"VGA",
                @"ati-vga",
                @"bochs-display",
                @"secondary-vga",
                @"virtio-gpu-device",
                @"virtio-gpu-gl-device (GPU Supported)",
                @"virtio-gpu-gl-pci (GPU Supported)",
                @"virtio-gpu-pci",
                @"virtio-vga",
                @"virtio-vga-gl (GPU Supported)",
                @"vmware-svga",
            ],
        @"riscv32":
            @[
                @"Cirrus CLGD 54xx VGA (cirrus-vga)",
                @"VGA",
                @"ati-vga",
                @"bochs-display",
                @"ram framebuffer standalone device (ramfb)",
                @"secondary-vga",
                @"virtio-gpu-device",
                @"virtio-gpu-gl-device (GPU Supported)",
                @"virtio-gpu-gl-pci (GPU Supported)",
                @"virtio-gpu-pci",
                @"virtio-ramfb",
                @"virtio-ramfb-gl (GPU Supported)",
                @"virtio-vga",
                @"virtio-vga-gl (GPU Supported)",
                @"vmware-svga",
            ],
        @"riscv64":
            @[
                @"Cirrus CLGD 54xx VGA (cirrus-vga)",
                @"VGA",
                @"ati-vga",
                @"bochs-display",
                @"ram framebuffer standalone device (ramfb)",
                @"secondary-vga",
                @"virtio-gpu-device",
                @"virtio-gpu-gl-device (GPU Supported)",
                @"virtio-gpu-gl-pci (GPU Supported)",
                @"virtio-gpu-pci",
                @"virtio-ramfb",
                @"virtio-ramfb-gl (GPU Supported)",
                @"virtio-vga",
                @"virtio-vga-gl (GPU Supported)",
                @"vmware-svga",
            ],
        @"rx":
            @[
            ],
        @"s390x":
            @[
                @"virtio-gpu-ccw",
                @"virtio-gpu-device",
                @"virtio-gpu-gl-device (GPU Supported)",
                @"virtio-gpu-gl-pci (GPU Supported)",
                @"virtio-gpu-pci",
                @"x-terminal3270",
            ],
        @"sh4":
            @[
                @"Cirrus CLGD 54xx VGA (cirrus-vga)",
                @"SM501 Display Controller (sm501)",
                @"VGA",
                @"ati-vga",
                @"bochs-display",
                @"secondary-vga",
                @"virtio-gpu-device",
                @"virtio-gpu-gl-device (GPU Supported)",
                @"virtio-gpu-gl-pci (GPU Supported)",
                @"virtio-gpu-pci",
                @"vmware-svga",
            ],
        @"sh4eb":
            @[
                @"Cirrus CLGD 54xx VGA (cirrus-vga)",
                @"SM501 Display Controller (sm501)",
                @"VGA",
                @"ati-vga",
                @"bochs-display",
                @"secondary-vga",
                @"virtio-gpu-device",
                @"virtio-gpu-gl-device (GPU Supported)",
                @"virtio-gpu-gl-pci (GPU Supported)",
                @"virtio-gpu-pci",
                @"vmware-svga",
            ],
        @"sparc":
            @[
                @"Sun TCX",
                @"Sun cgthree",
            ],
        @"sparc64":
            @[
                @"Cirrus CLGD 54xx VGA (cirrus-vga)",
                @"VGA",
                @"ati-vga",
                @"bochs-display",
                @"secondary-vga",
                @"virtio-gpu-device",
                @"virtio-gpu-gl-device (GPU Supported)",
                @"virtio-gpu-gl-pci (GPU Supported)",
                @"virtio-gpu-pci",
                @"vmware-svga",
            ],
        @"tricore":
            @[
            ],
        @"x86_64":
            @[
                @"Cirrus CLGD 54xx VGA (cirrus-vga)",
                @"Serial Graphics Adapter (sga)",
                @"Spice QXL GPU (primary, vga compatible) (qxl-vga)",
                @"Spice QXL GPU (secondary) (qxl)",
                @"VGA",
                @"ati-vga",
                @"bochs-display",
                @"isa-cirrus-vga",
                @"isa-vga",
                @"ram framebuffer standalone device (ramfb)",
                @"secondary-vga",
                @"virtio-gpu-device",
                @"virtio-gpu-gl-device (GPU Supported)",
                @"virtio-gpu-gl-pci (GPU Supported)",
                @"virtio-gpu-pci",
                @"virtio-ramfb",
                @"virtio-ramfb-gl (GPU Supported)",
                @"virtio-vga",
                @"virtio-vga-gl (GPU Supported)",
                @"vmware-svga",
            ],
        @"xtensa":
            @[
                @"Cirrus CLGD 54xx VGA (cirrus-vga)",
                @"VGA",
                @"ati-vga",
                @"bochs-display",
                @"secondary-vga",
                @"virtio-gpu-device",
                @"virtio-gpu-gl-device (GPU Supported)",
                @"virtio-gpu-gl-pci (GPU Supported)",
                @"virtio-gpu-pci",
                @"vmware-svga",
            ],
        @"xtensaeb":
            @[
                @"Cirrus CLGD 54xx VGA (cirrus-vga)",
                @"VGA",
                @"ati-vga",
                @"bochs-display",
                @"secondary-vga",
                @"virtio-gpu-device",
                @"virtio-gpu-gl-device (GPU Supported)",
                @"virtio-gpu-gl-pci (GPU Supported)",
                @"virtio-gpu-pci",
                @"vmware-svga",
            ],
    }[architecture];
}

+ (NSArray<NSString *>*)supportedNetworkCardsForArchitecture:(NSString *)architecture {
    return @{
        @"alpha":
            @[
                @"e1000",
                @"e1000-82544gc",
                @"e1000-82545em",
                @"i82550",
                @"i82551",
                @"i82557a",
                @"i82557b",
                @"i82557c",
                @"i82558a",
                @"i82558b",
                @"i82559a",
                @"i82559b",
                @"i82559c",
                @"i82559er",
                @"i82562",
                @"i82801",
                @"vmxnet3",
                @"ne2k_isa",
                @"ne2k_pci",
                @"pcnet",
                @"rtl8139",
                @"tulip",
                @"usb-net",
                @"virtio-net-device",
                @"virtio-net-pci",
                @"virtio-net-pci-non-transitional",
                @"virtio-net-pci-transitional",
            ],
        @"arm":
            @[
                @"e1000e",
                @"e1000",
                @"e1000-82544gc",
                @"e1000-82545em",
                @"i82550",
                @"i82551",
                @"i82557a",
                @"i82557b",
                @"i82557c",
                @"i82558a",
                @"i82558b",
                @"i82559a",
                @"i82559b",
                @"i82559c",
                @"i82559er",
                @"i82562",
                @"i82801",
                @"rocker",
                @"vmxnet3",
                @"ne2k_pci",
                @"pcnet",
                @"rtl8139",
                @"tulip",
                @"usb-net",
                @"virtio-net-device",
                @"virtio-net-pci",
                @"virtio-net-pci-non-transitional",
                @"virtio-net-pci-transitional",
            ],
        @"aarch64":
            @[
                @"e1000e",
                @"e1000",
                @"e1000-82544gc",
                @"e1000-82545em",
                @"i82550",
                @"i82551",
                @"i82557a",
                @"i82557b",
                @"i82557c",
                @"i82558a",
                @"i82558b",
                @"i82559a",
                @"i82559b",
                @"i82559c",
                @"i82559er",
                @"i82562",
                @"i82801",
                @"rocker",
                @"vmxnet3",
                @"ne2k_pci",
                @"pcnet",
                @"rtl8139",
                @"tulip",
                @"usb-net",
                @"virtio-net-device",
                @"virtio-net-pci",
                @"virtio-net-pci-non-transitional",
                @"virtio-net-pci-transitional",
            ],
        @"avr":
            @[
            ],
        @"cris":
            @[
            ],
        @"hppa":
            @[
                @"e1000",
                @"e1000-82544gc",
                @"e1000-82545em",
                @"i82550",
                @"i82551",
                @"i82557a",
                @"i82557b",
                @"i82557c",
                @"i82558a",
                @"i82558b",
                @"i82559a",
                @"i82559b",
                @"i82559c",
                @"i82559er",
                @"i82562",
                @"i82801",
                @"vmxnet3",
                @"ne2k_isa",
                @"ne2k_pci",
                @"pcnet",
                @"rtl8139",
                @"tulip",
                @"usb-net",
                @"virtio-net-device",
                @"virtio-net-pci",
                @"virtio-net-pci-non-transitional",
                @"virtio-net-pci-transitional",
            ],
        @"i386":
            @[
                @"e1000e",
                @"e1000",
                @"e1000-82544gc",
                @"e1000-82545em",
                @"i82550",
                @"i82551",
                @"i82557a",
                @"i82557b",
                @"i82557c",
                @"i82558a",
                @"i82558b",
                @"i82559a",
                @"i82559b",
                @"i82559c",
                @"i82559er",
                @"i82562",
                @"i82801",
                @"rocker",
                @"vmxnet3",
                @"ne2k_isa",
                @"ne2k_pci",
                @"pcnet",
                @"rtl8139",
                @"tulip",
                @"usb-net",
                @"virtio-net-device",
                @"virtio-net-pci",
                @"virtio-net-pci-non-transitional",
                @"virtio-net-pci-transitional",
            ],
        @"m68k":
            @[
                @"virtio-net-device",
            ],
        @"microblaze":
            @[
            ],
        @"microblazeel":
            @[
            ],
        @"mips":
            @[
                @"e1000",
                @"e1000-82544gc",
                @"e1000-82545em",
                @"i82550",
                @"i82551",
                @"i82557a",
                @"i82557b",
                @"i82557c",
                @"i82558a",
                @"i82558b",
                @"i82559a",
                @"i82559b",
                @"i82559c",
                @"i82559er",
                @"i82562",
                @"i82801",
                @"vmxnet3",
                @"ne2k_isa",
                @"ne2k_pci",
                @"pcnet",
                @"rtl8139",
                @"tulip",
                @"usb-net",
                @"virtio-net-device",
                @"virtio-net-pci",
                @"virtio-net-pci-non-transitional",
                @"virtio-net-pci-transitional",
            ],
        @"mipsel":
            @[
                @"e1000",
                @"e1000-82544gc",
                @"e1000-82545em",
                @"i82550",
                @"i82551",
                @"i82557a",
                @"i82557b",
                @"i82557c",
                @"i82558a",
                @"i82558b",
                @"i82559a",
                @"i82559b",
                @"i82559c",
                @"i82559er",
                @"i82562",
                @"i82801",
                @"vmxnet3",
                @"ne2k_isa",
                @"ne2k_pci",
                @"pcnet",
                @"rtl8139",
                @"tulip",
                @"usb-net",
                @"virtio-net-device",
                @"virtio-net-pci",
                @"virtio-net-pci-non-transitional",
                @"virtio-net-pci-transitional",
            ],
        @"mips64":
            @[
                @"e1000",
                @"e1000-82544gc",
                @"e1000-82545em",
                @"i82550",
                @"i82551",
                @"i82557a",
                @"i82557b",
                @"i82557c",
                @"i82558a",
                @"i82558b",
                @"i82559a",
                @"i82559b",
                @"i82559c",
                @"i82559er",
                @"i82562",
                @"i82801",
                @"vmxnet3",
                @"ne2k_isa",
                @"ne2k_pci",
                @"pcnet",
                @"rtl8139",
                @"tulip",
                @"usb-net",
                @"virtio-net-device",
                @"virtio-net-pci",
                @"virtio-net-pci-non-transitional",
                @"virtio-net-pci-transitional",
            ],
        @"mips64el":
            @[
                @"e1000e",
                @"e1000",
                @"e1000-82544gc",
                @"e1000-82545em",
                @"i82550",
                @"i82551",
                @"i82557a",
                @"i82557b",
                @"i82557c",
                @"i82558a",
                @"i82558b",
                @"i82559a",
                @"i82559b",
                @"i82559c",
                @"i82559er",
                @"i82562",
                @"i82801",
                @"rocker",
                @"vmxnet3",
                @"ne2k_isa",
                @"ne2k_pci",
                @"pcnet",
                @"rtl8139",
                @"tulip",
                @"usb-net",
                @"virtio-net-device",
                @"virtio-net-pci",
                @"virtio-net-pci-non-transitional",
                @"virtio-net-pci-transitional",
            ],
        @"nios2":
            @[
            ],
        @"or1k":
            @[
            ],
        @"ppc":
            @[
                @"e1000e",
                @"e1000",
                @"e1000-82544gc",
                @"e1000-82545em",
                @"i82550",
                @"i82551",
                @"i82557a",
                @"i82557b",
                @"i82557c",
                @"i82558a",
                @"i82558b",
                @"i82559a",
                @"i82559b",
                @"i82559c",
                @"i82559er",
                @"i82562",
                @"i82801",
                @"rocker",
                @"vmxnet3",
                @"ne2k_isa",
                @"ne2k_pci",
                @"pcnet",
                @"rtl8139",
                @"sungem",
                @"tulip",
                @"usb-net",
                @"virtio-net-device",
                @"virtio-net-pci",
                @"virtio-net-pci-non-transitional",
                @"virtio-net-pci-transitional",
            ],
        @"ppc64":
            @[
                @"e1000e",
                @"e1000",
                @"e1000-82544gc",
                @"e1000-82545em",
                @"i82550",
                @"i82551",
                @"i82557a",
                @"i82557b",
                @"i82557c",
                @"i82558a",
                @"i82558b",
                @"i82559a",
                @"i82559b",
                @"i82559c",
                @"i82559er",
                @"i82562",
                @"i82801",
                @"rocker",
                @"vmxnet3",
                @"ne2k_isa",
                @"ne2k_pci",
                @"pcnet",
                @"rtl8139",
                @"spapr-vlan",
                @"sungem",
                @"tulip",
                @"usb-net",
                @"virtio-net-device",
                @"virtio-net-pci",
                @"virtio-net-pci-non-transitional",
                @"virtio-net-pci-transitional",
            ],
        @"riscv32":
            @[
                @"e1000e",
                @"e1000",
                @"e1000-82544gc",
                @"e1000-82545em",
                @"i82550",
                @"i82551",
                @"i82557a",
                @"i82557b",
                @"i82557c",
                @"i82558a",
                @"i82558b",
                @"i82559a",
                @"i82559b",
                @"i82559c",
                @"i82559er",
                @"i82562",
                @"i82801",
                @"rocker",
                @"vmxnet3",
                @"ne2k_pci",
                @"pcnet",
                @"rtl8139",
                @"tulip",
                @"usb-net",
                @"virtio-net-device",
                @"virtio-net-pci",
                @"virtio-net-pci-non-transitional",
                @"virtio-net-pci-transitional",
            ],
        @"riscv64":
            @[
                @"e1000e",
                @"e1000",
                @"e1000-82544gc",
                @"e1000-82545em",
                @"i82550",
                @"i82551",
                @"i82557a",
                @"i82557b",
                @"i82557c",
                @"i82558a",
                @"i82558b",
                @"i82559a",
                @"i82559b",
                @"i82559c",
                @"i82559er",
                @"i82562",
                @"i82801",
                @"rocker",
                @"vmxnet3",
                @"ne2k_pci",
                @"pcnet",
                @"rtl8139",
                @"tulip",
                @"usb-net",
                @"virtio-net-device",
                @"virtio-net-pci",
                @"virtio-net-pci-non-transitional",
                @"virtio-net-pci-transitional",
            ],
        @"rx":
            @[
            ],
        @"s390x":
            @[
                @"virtio-net-ccw",
                @"virtio-net-device",
                @"virtio-net-pci",
                @"virtio-net-pci-non-transitional",
                @"virtio-net-pci-transitional",
            ],
        @"sh4":
            @[
                @"e1000",
                @"e1000-82544gc",
                @"e1000-82545em",
                @"i82550",
                @"i82551",
                @"i82557a",
                @"i82557b",
                @"i82557c",
                @"i82558a",
                @"i82558b",
                @"i82559a",
                @"i82559b",
                @"i82559c",
                @"i82559er",
                @"i82562",
                @"i82801",
                @"vmxnet3",
                @"ne2k_isa",
                @"ne2k_pci",
                @"pcnet",
                @"rtl8139",
                @"tulip",
                @"usb-net",
                @"virtio-net-device",
                @"virtio-net-pci",
                @"virtio-net-pci-non-transitional",
                @"virtio-net-pci-transitional",
            ],
        @"sh4eb":
            @[
                @"e1000",
                @"e1000-82544gc",
                @"e1000-82545em",
                @"i82550",
                @"i82551",
                @"i82557a",
                @"i82557b",
                @"i82557c",
                @"i82558a",
                @"i82558b",
                @"i82559a",
                @"i82559b",
                @"i82559c",
                @"i82559er",
                @"i82562",
                @"i82801",
                @"vmxnet3",
                @"ne2k_isa",
                @"ne2k_pci",
                @"pcnet",
                @"rtl8139",
                @"tulip",
                @"usb-net",
                @"virtio-net-device",
                @"virtio-net-pci",
                @"virtio-net-pci-non-transitional",
                @"virtio-net-pci-transitional",
            ],
        @"sparc":
            @[
                @"lance",
            ],
        @"sparc64":
            @[
                @"e1000",
                @"e1000-82544gc",
                @"e1000-82545em",
                @"i82550",
                @"i82551",
                @"i82557a",
                @"i82557b",
                @"i82557c",
                @"i82558a",
                @"i82558b",
                @"i82559a",
                @"i82559b",
                @"i82559c",
                @"i82559er",
                @"i82562",
                @"i82801",
                @"vmxnet3",
                @"ne2k_isa",
                @"ne2k_pci",
                @"pcnet",
                @"rtl8139",
                @"sunhme",
                @"tulip",
                @"usb-net",
                @"virtio-net-device",
                @"virtio-net-pci",
                @"virtio-net-pci-non-transitional",
                @"virtio-net-pci-transitional",
            ],
        @"tricore":
            @[
            ],
        @"x86_64":
            @[
                @"e1000e",
                @"e1000",
                @"e1000-82544gc",
                @"e1000-82545em",
                @"i82550",
                @"i82551",
                @"i82557a",
                @"i82557b",
                @"i82557c",
                @"i82558a",
                @"i82558b",
                @"i82559a",
                @"i82559b",
                @"i82559c",
                @"i82559er",
                @"i82562",
                @"i82801",
                @"rocker",
                @"vmxnet3",
                @"ne2k_isa",
                @"ne2k_pci",
                @"pcnet",
                @"rtl8139",
                @"tulip",
                @"usb-net",
                @"virtio-net-device",
                @"virtio-net-pci",
                @"virtio-net-pci-non-transitional",
                @"virtio-net-pci-transitional",
            ],
        @"xtensa":
            @[
                @"e1000",
                @"e1000-82544gc",
                @"e1000-82545em",
                @"i82550",
                @"i82551",
                @"i82557a",
                @"i82557b",
                @"i82557c",
                @"i82558a",
                @"i82558b",
                @"i82559a",
                @"i82559b",
                @"i82559c",
                @"i82559er",
                @"i82562",
                @"i82801",
                @"vmxnet3",
                @"ne2k_pci",
                @"pcnet",
                @"rtl8139",
                @"tulip",
                @"usb-net",
                @"virtio-net-device",
                @"virtio-net-pci",
                @"virtio-net-pci-non-transitional",
                @"virtio-net-pci-transitional",
            ],
        @"xtensaeb":
            @[
                @"e1000",
                @"e1000-82544gc",
                @"e1000-82545em",
                @"i82550",
                @"i82551",
                @"i82557a",
                @"i82557b",
                @"i82557c",
                @"i82558a",
                @"i82558b",
                @"i82559a",
                @"i82559b",
                @"i82559c",
                @"i82559er",
                @"i82562",
                @"i82801",
                @"vmxnet3",
                @"ne2k_pci",
                @"pcnet",
                @"rtl8139",
                @"tulip",
                @"usb-net",
                @"virtio-net-device",
                @"virtio-net-pci",
                @"virtio-net-pci-non-transitional",
                @"virtio-net-pci-transitional",
            ],
    }[architecture];
}

+ (NSArray<NSString *>*)supportedNetworkCardsForArchitecturePretty:(NSString *)architecture {
    return @{
        @"alpha":
            @[
                @"Intel Gigabit Ethernet (e1000)",
                @"Intel Gigabit Ethernet (e1000-82544gc)",
                @"Intel Gigabit Ethernet (e1000-82545em)",
                @"Intel i82550 Ethernet (i82550)",
                @"Intel i82551 Ethernet (i82551)",
                @"Intel i82557A Ethernet (i82557a)",
                @"Intel i82557B Ethernet (i82557b)",
                @"Intel i82557C Ethernet (i82557c)",
                @"Intel i82558A Ethernet (i82558a)",
                @"Intel i82558B Ethernet (i82558b)",
                @"Intel i82559A Ethernet (i82559a)",
                @"Intel i82559B Ethernet (i82559b)",
                @"Intel i82559C Ethernet (i82559c)",
                @"Intel i82559ER Ethernet (i82559er)",
                @"Intel i82562 Ethernet (i82562)",
                @"Intel i82801 Ethernet (i82801)",
                @"VMWare Paravirtualized Ethernet v3 (vmxnet3)",
                @"ne2k_isa",
                @"ne2k_pci",
                @"pcnet",
                @"rtl8139",
                @"tulip",
                @"usb-net",
                @"virtio-net-device",
                @"virtio-net-pci",
                @"virtio-net-pci-non-transitional",
                @"virtio-net-pci-transitional",
            ],
        @"arm":
            @[
                @"Intel 82574L GbE Controller (e1000e)",
                @"Intel Gigabit Ethernet (e1000)",
                @"Intel Gigabit Ethernet (e1000-82544gc)",
                @"Intel Gigabit Ethernet (e1000-82545em)",
                @"Intel i82550 Ethernet (i82550)",
                @"Intel i82551 Ethernet (i82551)",
                @"Intel i82557A Ethernet (i82557a)",
                @"Intel i82557B Ethernet (i82557b)",
                @"Intel i82557C Ethernet (i82557c)",
                @"Intel i82558A Ethernet (i82558a)",
                @"Intel i82558B Ethernet (i82558b)",
                @"Intel i82559A Ethernet (i82559a)",
                @"Intel i82559B Ethernet (i82559b)",
                @"Intel i82559C Ethernet (i82559c)",
                @"Intel i82559ER Ethernet (i82559er)",
                @"Intel i82562 Ethernet (i82562)",
                @"Intel i82801 Ethernet (i82801)",
                @"Rocker Switch (rocker)",
                @"VMWare Paravirtualized Ethernet v3 (vmxnet3)",
                @"ne2k_pci",
                @"pcnet",
                @"rtl8139",
                @"tulip",
                @"usb-net",
                @"virtio-net-device",
                @"virtio-net-pci",
                @"virtio-net-pci-non-transitional",
                @"virtio-net-pci-transitional",
            ],
        @"aarch64":
            @[
                @"Intel 82574L GbE Controller (e1000e)",
                @"Intel Gigabit Ethernet (e1000)",
                @"Intel Gigabit Ethernet (e1000-82544gc)",
                @"Intel Gigabit Ethernet (e1000-82545em)",
                @"Intel i82550 Ethernet (i82550)",
                @"Intel i82551 Ethernet (i82551)",
                @"Intel i82557A Ethernet (i82557a)",
                @"Intel i82557B Ethernet (i82557b)",
                @"Intel i82557C Ethernet (i82557c)",
                @"Intel i82558A Ethernet (i82558a)",
                @"Intel i82558B Ethernet (i82558b)",
                @"Intel i82559A Ethernet (i82559a)",
                @"Intel i82559B Ethernet (i82559b)",
                @"Intel i82559C Ethernet (i82559c)",
                @"Intel i82559ER Ethernet (i82559er)",
                @"Intel i82562 Ethernet (i82562)",
                @"Intel i82801 Ethernet (i82801)",
                @"Rocker Switch (rocker)",
                @"VMWare Paravirtualized Ethernet v3 (vmxnet3)",
                @"ne2k_pci",
                @"pcnet",
                @"rtl8139",
                @"tulip",
                @"usb-net",
                @"virtio-net-device",
                @"virtio-net-pci",
                @"virtio-net-pci-non-transitional",
                @"virtio-net-pci-transitional",
            ],
        @"avr":
            @[
            ],
        @"cris":
            @[
            ],
        @"hppa":
            @[
                @"Intel Gigabit Ethernet (e1000)",
                @"Intel Gigabit Ethernet (e1000-82544gc)",
                @"Intel Gigabit Ethernet (e1000-82545em)",
                @"Intel i82550 Ethernet (i82550)",
                @"Intel i82551 Ethernet (i82551)",
                @"Intel i82557A Ethernet (i82557a)",
                @"Intel i82557B Ethernet (i82557b)",
                @"Intel i82557C Ethernet (i82557c)",
                @"Intel i82558A Ethernet (i82558a)",
                @"Intel i82558B Ethernet (i82558b)",
                @"Intel i82559A Ethernet (i82559a)",
                @"Intel i82559B Ethernet (i82559b)",
                @"Intel i82559C Ethernet (i82559c)",
                @"Intel i82559ER Ethernet (i82559er)",
                @"Intel i82562 Ethernet (i82562)",
                @"Intel i82801 Ethernet (i82801)",
                @"VMWare Paravirtualized Ethernet v3 (vmxnet3)",
                @"ne2k_isa",
                @"ne2k_pci",
                @"pcnet",
                @"rtl8139",
                @"tulip",
                @"usb-net",
                @"virtio-net-device",
                @"virtio-net-pci",
                @"virtio-net-pci-non-transitional",
                @"virtio-net-pci-transitional",
            ],
        @"i386":
            @[
                @"Intel 82574L GbE Controller (e1000e)",
                @"Intel Gigabit Ethernet (e1000)",
                @"Intel Gigabit Ethernet (e1000-82544gc)",
                @"Intel Gigabit Ethernet (e1000-82545em)",
                @"Intel i82550 Ethernet (i82550)",
                @"Intel i82551 Ethernet (i82551)",
                @"Intel i82557A Ethernet (i82557a)",
                @"Intel i82557B Ethernet (i82557b)",
                @"Intel i82557C Ethernet (i82557c)",
                @"Intel i82558A Ethernet (i82558a)",
                @"Intel i82558B Ethernet (i82558b)",
                @"Intel i82559A Ethernet (i82559a)",
                @"Intel i82559B Ethernet (i82559b)",
                @"Intel i82559C Ethernet (i82559c)",
                @"Intel i82559ER Ethernet (i82559er)",
                @"Intel i82562 Ethernet (i82562)",
                @"Intel i82801 Ethernet (i82801)",
                @"Rocker Switch (rocker)",
                @"VMWare Paravirtualized Ethernet v3 (vmxnet3)",
                @"ne2k_isa",
                @"ne2k_pci",
                @"pcnet",
                @"rtl8139",
                @"tulip",
                @"usb-net",
                @"virtio-net-device",
                @"virtio-net-pci",
                @"virtio-net-pci-non-transitional",
                @"virtio-net-pci-transitional",
            ],
        @"m68k":
            @[
                @"virtio-net-device",
            ],
        @"microblaze":
            @[
            ],
        @"microblazeel":
            @[
            ],
        @"mips":
            @[
                @"Intel Gigabit Ethernet (e1000)",
                @"Intel Gigabit Ethernet (e1000-82544gc)",
                @"Intel Gigabit Ethernet (e1000-82545em)",
                @"Intel i82550 Ethernet (i82550)",
                @"Intel i82551 Ethernet (i82551)",
                @"Intel i82557A Ethernet (i82557a)",
                @"Intel i82557B Ethernet (i82557b)",
                @"Intel i82557C Ethernet (i82557c)",
                @"Intel i82558A Ethernet (i82558a)",
                @"Intel i82558B Ethernet (i82558b)",
                @"Intel i82559A Ethernet (i82559a)",
                @"Intel i82559B Ethernet (i82559b)",
                @"Intel i82559C Ethernet (i82559c)",
                @"Intel i82559ER Ethernet (i82559er)",
                @"Intel i82562 Ethernet (i82562)",
                @"Intel i82801 Ethernet (i82801)",
                @"VMWare Paravirtualized Ethernet v3 (vmxnet3)",
                @"ne2k_isa",
                @"ne2k_pci",
                @"pcnet",
                @"rtl8139",
                @"tulip",
                @"usb-net",
                @"virtio-net-device",
                @"virtio-net-pci",
                @"virtio-net-pci-non-transitional",
                @"virtio-net-pci-transitional",
            ],
        @"mipsel":
            @[
                @"Intel Gigabit Ethernet (e1000)",
                @"Intel Gigabit Ethernet (e1000-82544gc)",
                @"Intel Gigabit Ethernet (e1000-82545em)",
                @"Intel i82550 Ethernet (i82550)",
                @"Intel i82551 Ethernet (i82551)",
                @"Intel i82557A Ethernet (i82557a)",
                @"Intel i82557B Ethernet (i82557b)",
                @"Intel i82557C Ethernet (i82557c)",
                @"Intel i82558A Ethernet (i82558a)",
                @"Intel i82558B Ethernet (i82558b)",
                @"Intel i82559A Ethernet (i82559a)",
                @"Intel i82559B Ethernet (i82559b)",
                @"Intel i82559C Ethernet (i82559c)",
                @"Intel i82559ER Ethernet (i82559er)",
                @"Intel i82562 Ethernet (i82562)",
                @"Intel i82801 Ethernet (i82801)",
                @"VMWare Paravirtualized Ethernet v3 (vmxnet3)",
                @"ne2k_isa",
                @"ne2k_pci",
                @"pcnet",
                @"rtl8139",
                @"tulip",
                @"usb-net",
                @"virtio-net-device",
                @"virtio-net-pci",
                @"virtio-net-pci-non-transitional",
                @"virtio-net-pci-transitional",
            ],
        @"mips64":
            @[
                @"Intel Gigabit Ethernet (e1000)",
                @"Intel Gigabit Ethernet (e1000-82544gc)",
                @"Intel Gigabit Ethernet (e1000-82545em)",
                @"Intel i82550 Ethernet (i82550)",
                @"Intel i82551 Ethernet (i82551)",
                @"Intel i82557A Ethernet (i82557a)",
                @"Intel i82557B Ethernet (i82557b)",
                @"Intel i82557C Ethernet (i82557c)",
                @"Intel i82558A Ethernet (i82558a)",
                @"Intel i82558B Ethernet (i82558b)",
                @"Intel i82559A Ethernet (i82559a)",
                @"Intel i82559B Ethernet (i82559b)",
                @"Intel i82559C Ethernet (i82559c)",
                @"Intel i82559ER Ethernet (i82559er)",
                @"Intel i82562 Ethernet (i82562)",
                @"Intel i82801 Ethernet (i82801)",
                @"VMWare Paravirtualized Ethernet v3 (vmxnet3)",
                @"ne2k_isa",
                @"ne2k_pci",
                @"pcnet",
                @"rtl8139",
                @"tulip",
                @"usb-net",
                @"virtio-net-device",
                @"virtio-net-pci",
                @"virtio-net-pci-non-transitional",
                @"virtio-net-pci-transitional",
            ],
        @"mips64el":
            @[
                @"Intel 82574L GbE Controller (e1000e)",
                @"Intel Gigabit Ethernet (e1000)",
                @"Intel Gigabit Ethernet (e1000-82544gc)",
                @"Intel Gigabit Ethernet (e1000-82545em)",
                @"Intel i82550 Ethernet (i82550)",
                @"Intel i82551 Ethernet (i82551)",
                @"Intel i82557A Ethernet (i82557a)",
                @"Intel i82557B Ethernet (i82557b)",
                @"Intel i82557C Ethernet (i82557c)",
                @"Intel i82558A Ethernet (i82558a)",
                @"Intel i82558B Ethernet (i82558b)",
                @"Intel i82559A Ethernet (i82559a)",
                @"Intel i82559B Ethernet (i82559b)",
                @"Intel i82559C Ethernet (i82559c)",
                @"Intel i82559ER Ethernet (i82559er)",
                @"Intel i82562 Ethernet (i82562)",
                @"Intel i82801 Ethernet (i82801)",
                @"Rocker Switch (rocker)",
                @"VMWare Paravirtualized Ethernet v3 (vmxnet3)",
                @"ne2k_isa",
                @"ne2k_pci",
                @"pcnet",
                @"rtl8139",
                @"tulip",
                @"usb-net",
                @"virtio-net-device",
                @"virtio-net-pci",
                @"virtio-net-pci-non-transitional",
                @"virtio-net-pci-transitional",
            ],
        @"nios2":
            @[
            ],
        @"or1k":
            @[
            ],
        @"ppc":
            @[
                @"Intel 82574L GbE Controller (e1000e)",
                @"Intel Gigabit Ethernet (e1000)",
                @"Intel Gigabit Ethernet (e1000-82544gc)",
                @"Intel Gigabit Ethernet (e1000-82545em)",
                @"Intel i82550 Ethernet (i82550)",
                @"Intel i82551 Ethernet (i82551)",
                @"Intel i82557A Ethernet (i82557a)",
                @"Intel i82557B Ethernet (i82557b)",
                @"Intel i82557C Ethernet (i82557c)",
                @"Intel i82558A Ethernet (i82558a)",
                @"Intel i82558B Ethernet (i82558b)",
                @"Intel i82559A Ethernet (i82559a)",
                @"Intel i82559B Ethernet (i82559b)",
                @"Intel i82559C Ethernet (i82559c)",
                @"Intel i82559ER Ethernet (i82559er)",
                @"Intel i82562 Ethernet (i82562)",
                @"Intel i82801 Ethernet (i82801)",
                @"Rocker Switch (rocker)",
                @"VMWare Paravirtualized Ethernet v3 (vmxnet3)",
                @"ne2k_isa",
                @"ne2k_pci",
                @"pcnet",
                @"rtl8139",
                @"sungem",
                @"tulip",
                @"usb-net",
                @"virtio-net-device",
                @"virtio-net-pci",
                @"virtio-net-pci-non-transitional",
                @"virtio-net-pci-transitional",
            ],
        @"ppc64":
            @[
                @"Intel 82574L GbE Controller (e1000e)",
                @"Intel Gigabit Ethernet (e1000)",
                @"Intel Gigabit Ethernet (e1000-82544gc)",
                @"Intel Gigabit Ethernet (e1000-82545em)",
                @"Intel i82550 Ethernet (i82550)",
                @"Intel i82551 Ethernet (i82551)",
                @"Intel i82557A Ethernet (i82557a)",
                @"Intel i82557B Ethernet (i82557b)",
                @"Intel i82557C Ethernet (i82557c)",
                @"Intel i82558A Ethernet (i82558a)",
                @"Intel i82558B Ethernet (i82558b)",
                @"Intel i82559A Ethernet (i82559a)",
                @"Intel i82559B Ethernet (i82559b)",
                @"Intel i82559C Ethernet (i82559c)",
                @"Intel i82559ER Ethernet (i82559er)",
                @"Intel i82562 Ethernet (i82562)",
                @"Intel i82801 Ethernet (i82801)",
                @"Rocker Switch (rocker)",
                @"VMWare Paravirtualized Ethernet v3 (vmxnet3)",
                @"ne2k_isa",
                @"ne2k_pci",
                @"pcnet",
                @"rtl8139",
                @"spapr-vlan",
                @"sungem",
                @"tulip",
                @"usb-net",
                @"virtio-net-device",
                @"virtio-net-pci",
                @"virtio-net-pci-non-transitional",
                @"virtio-net-pci-transitional",
            ],
        @"riscv32":
            @[
                @"Intel 82574L GbE Controller (e1000e)",
                @"Intel Gigabit Ethernet (e1000)",
                @"Intel Gigabit Ethernet (e1000-82544gc)",
                @"Intel Gigabit Ethernet (e1000-82545em)",
                @"Intel i82550 Ethernet (i82550)",
                @"Intel i82551 Ethernet (i82551)",
                @"Intel i82557A Ethernet (i82557a)",
                @"Intel i82557B Ethernet (i82557b)",
                @"Intel i82557C Ethernet (i82557c)",
                @"Intel i82558A Ethernet (i82558a)",
                @"Intel i82558B Ethernet (i82558b)",
                @"Intel i82559A Ethernet (i82559a)",
                @"Intel i82559B Ethernet (i82559b)",
                @"Intel i82559C Ethernet (i82559c)",
                @"Intel i82559ER Ethernet (i82559er)",
                @"Intel i82562 Ethernet (i82562)",
                @"Intel i82801 Ethernet (i82801)",
                @"Rocker Switch (rocker)",
                @"VMWare Paravirtualized Ethernet v3 (vmxnet3)",
                @"ne2k_pci",
                @"pcnet",
                @"rtl8139",
                @"tulip",
                @"usb-net",
                @"virtio-net-device",
                @"virtio-net-pci",
                @"virtio-net-pci-non-transitional",
                @"virtio-net-pci-transitional",
            ],
        @"riscv64":
            @[
                @"Intel 82574L GbE Controller (e1000e)",
                @"Intel Gigabit Ethernet (e1000)",
                @"Intel Gigabit Ethernet (e1000-82544gc)",
                @"Intel Gigabit Ethernet (e1000-82545em)",
                @"Intel i82550 Ethernet (i82550)",
                @"Intel i82551 Ethernet (i82551)",
                @"Intel i82557A Ethernet (i82557a)",
                @"Intel i82557B Ethernet (i82557b)",
                @"Intel i82557C Ethernet (i82557c)",
                @"Intel i82558A Ethernet (i82558a)",
                @"Intel i82558B Ethernet (i82558b)",
                @"Intel i82559A Ethernet (i82559a)",
                @"Intel i82559B Ethernet (i82559b)",
                @"Intel i82559C Ethernet (i82559c)",
                @"Intel i82559ER Ethernet (i82559er)",
                @"Intel i82562 Ethernet (i82562)",
                @"Intel i82801 Ethernet (i82801)",
                @"Rocker Switch (rocker)",
                @"VMWare Paravirtualized Ethernet v3 (vmxnet3)",
                @"ne2k_pci",
                @"pcnet",
                @"rtl8139",
                @"tulip",
                @"usb-net",
                @"virtio-net-device",
                @"virtio-net-pci",
                @"virtio-net-pci-non-transitional",
                @"virtio-net-pci-transitional",
            ],
        @"rx":
            @[
            ],
        @"s390x":
            @[
                @"virtio-net-ccw",
                @"virtio-net-device",
                @"virtio-net-pci",
                @"virtio-net-pci-non-transitional",
                @"virtio-net-pci-transitional",
            ],
        @"sh4":
            @[
                @"Intel Gigabit Ethernet (e1000)",
                @"Intel Gigabit Ethernet (e1000-82544gc)",
                @"Intel Gigabit Ethernet (e1000-82545em)",
                @"Intel i82550 Ethernet (i82550)",
                @"Intel i82551 Ethernet (i82551)",
                @"Intel i82557A Ethernet (i82557a)",
                @"Intel i82557B Ethernet (i82557b)",
                @"Intel i82557C Ethernet (i82557c)",
                @"Intel i82558A Ethernet (i82558a)",
                @"Intel i82558B Ethernet (i82558b)",
                @"Intel i82559A Ethernet (i82559a)",
                @"Intel i82559B Ethernet (i82559b)",
                @"Intel i82559C Ethernet (i82559c)",
                @"Intel i82559ER Ethernet (i82559er)",
                @"Intel i82562 Ethernet (i82562)",
                @"Intel i82801 Ethernet (i82801)",
                @"VMWare Paravirtualized Ethernet v3 (vmxnet3)",
                @"ne2k_isa",
                @"ne2k_pci",
                @"pcnet",
                @"rtl8139",
                @"tulip",
                @"usb-net",
                @"virtio-net-device",
                @"virtio-net-pci",
                @"virtio-net-pci-non-transitional",
                @"virtio-net-pci-transitional",
            ],
        @"sh4eb":
            @[
                @"Intel Gigabit Ethernet (e1000)",
                @"Intel Gigabit Ethernet (e1000-82544gc)",
                @"Intel Gigabit Ethernet (e1000-82545em)",
                @"Intel i82550 Ethernet (i82550)",
                @"Intel i82551 Ethernet (i82551)",
                @"Intel i82557A Ethernet (i82557a)",
                @"Intel i82557B Ethernet (i82557b)",
                @"Intel i82557C Ethernet (i82557c)",
                @"Intel i82558A Ethernet (i82558a)",
                @"Intel i82558B Ethernet (i82558b)",
                @"Intel i82559A Ethernet (i82559a)",
                @"Intel i82559B Ethernet (i82559b)",
                @"Intel i82559C Ethernet (i82559c)",
                @"Intel i82559ER Ethernet (i82559er)",
                @"Intel i82562 Ethernet (i82562)",
                @"Intel i82801 Ethernet (i82801)",
                @"VMWare Paravirtualized Ethernet v3 (vmxnet3)",
                @"ne2k_isa",
                @"ne2k_pci",
                @"pcnet",
                @"rtl8139",
                @"tulip",
                @"usb-net",
                @"virtio-net-device",
                @"virtio-net-pci",
                @"virtio-net-pci-non-transitional",
                @"virtio-net-pci-transitional",
            ],
        @"sparc":
            @[
                @"Lance (Am7990)",
            ],
        @"sparc64":
            @[
                @"Intel Gigabit Ethernet (e1000)",
                @"Intel Gigabit Ethernet (e1000-82544gc)",
                @"Intel Gigabit Ethernet (e1000-82545em)",
                @"Intel i82550 Ethernet (i82550)",
                @"Intel i82551 Ethernet (i82551)",
                @"Intel i82557A Ethernet (i82557a)",
                @"Intel i82557B Ethernet (i82557b)",
                @"Intel i82557C Ethernet (i82557c)",
                @"Intel i82558A Ethernet (i82558a)",
                @"Intel i82558B Ethernet (i82558b)",
                @"Intel i82559A Ethernet (i82559a)",
                @"Intel i82559B Ethernet (i82559b)",
                @"Intel i82559C Ethernet (i82559c)",
                @"Intel i82559ER Ethernet (i82559er)",
                @"Intel i82562 Ethernet (i82562)",
                @"Intel i82801 Ethernet (i82801)",
                @"VMWare Paravirtualized Ethernet v3 (vmxnet3)",
                @"ne2k_isa",
                @"ne2k_pci",
                @"pcnet",
                @"rtl8139",
                @"sunhme",
                @"tulip",
                @"usb-net",
                @"virtio-net-device",
                @"virtio-net-pci",
                @"virtio-net-pci-non-transitional",
                @"virtio-net-pci-transitional",
            ],
        @"tricore":
            @[
            ],
        @"x86_64":
            @[
                @"Intel 82574L GbE Controller (e1000e)",
                @"Intel Gigabit Ethernet (e1000)",
                @"Intel Gigabit Ethernet (e1000-82544gc)",
                @"Intel Gigabit Ethernet (e1000-82545em)",
                @"Intel i82550 Ethernet (i82550)",
                @"Intel i82551 Ethernet (i82551)",
                @"Intel i82557A Ethernet (i82557a)",
                @"Intel i82557B Ethernet (i82557b)",
                @"Intel i82557C Ethernet (i82557c)",
                @"Intel i82558A Ethernet (i82558a)",
                @"Intel i82558B Ethernet (i82558b)",
                @"Intel i82559A Ethernet (i82559a)",
                @"Intel i82559B Ethernet (i82559b)",
                @"Intel i82559C Ethernet (i82559c)",
                @"Intel i82559ER Ethernet (i82559er)",
                @"Intel i82562 Ethernet (i82562)",
                @"Intel i82801 Ethernet (i82801)",
                @"Rocker Switch (rocker)",
                @"VMWare Paravirtualized Ethernet v3 (vmxnet3)",
                @"ne2k_isa",
                @"ne2k_pci",
                @"pcnet",
                @"rtl8139",
                @"tulip",
                @"usb-net",
                @"virtio-net-device",
                @"virtio-net-pci",
                @"virtio-net-pci-non-transitional",
                @"virtio-net-pci-transitional",
            ],
        @"xtensa":
            @[
                @"Intel Gigabit Ethernet (e1000)",
                @"Intel Gigabit Ethernet (e1000-82544gc)",
                @"Intel Gigabit Ethernet (e1000-82545em)",
                @"Intel i82550 Ethernet (i82550)",
                @"Intel i82551 Ethernet (i82551)",
                @"Intel i82557A Ethernet (i82557a)",
                @"Intel i82557B Ethernet (i82557b)",
                @"Intel i82557C Ethernet (i82557c)",
                @"Intel i82558A Ethernet (i82558a)",
                @"Intel i82558B Ethernet (i82558b)",
                @"Intel i82559A Ethernet (i82559a)",
                @"Intel i82559B Ethernet (i82559b)",
                @"Intel i82559C Ethernet (i82559c)",
                @"Intel i82559ER Ethernet (i82559er)",
                @"Intel i82562 Ethernet (i82562)",
                @"Intel i82801 Ethernet (i82801)",
                @"VMWare Paravirtualized Ethernet v3 (vmxnet3)",
                @"ne2k_pci",
                @"pcnet",
                @"rtl8139",
                @"tulip",
                @"usb-net",
                @"virtio-net-device",
                @"virtio-net-pci",
                @"virtio-net-pci-non-transitional",
                @"virtio-net-pci-transitional",
            ],
        @"xtensaeb":
            @[
                @"Intel Gigabit Ethernet (e1000)",
                @"Intel Gigabit Ethernet (e1000-82544gc)",
                @"Intel Gigabit Ethernet (e1000-82545em)",
                @"Intel i82550 Ethernet (i82550)",
                @"Intel i82551 Ethernet (i82551)",
                @"Intel i82557A Ethernet (i82557a)",
                @"Intel i82557B Ethernet (i82557b)",
                @"Intel i82557C Ethernet (i82557c)",
                @"Intel i82558A Ethernet (i82558a)",
                @"Intel i82558B Ethernet (i82558b)",
                @"Intel i82559A Ethernet (i82559a)",
                @"Intel i82559B Ethernet (i82559b)",
                @"Intel i82559C Ethernet (i82559c)",
                @"Intel i82559ER Ethernet (i82559er)",
                @"Intel i82562 Ethernet (i82562)",
                @"Intel i82801 Ethernet (i82801)",
                @"VMWare Paravirtualized Ethernet v3 (vmxnet3)",
                @"ne2k_pci",
                @"pcnet",
                @"rtl8139",
                @"tulip",
                @"usb-net",
                @"virtio-net-device",
                @"virtio-net-pci",
                @"virtio-net-pci-non-transitional",
                @"virtio-net-pci-transitional",
            ],
    }[architecture];
}

+ (NSArray<NSString *>*)supportedSoundCardsForArchitecture:(NSString *)architecture {
    return @{
        @"alpha":
            @[
                @"sb16",
                @"cs4231a",
                @"ES1370",
                @"gus",
                @"AC97",
                @"intel-hda",
                @"ich9-intel-hda",
                @"adlib",
                @"usb-audio",
            ],
        @"arm":
            @[
                @"ES1370",
                @"AC97",
                @"intel-hda",
                @"ich9-intel-hda",
                @"usb-audio",
            ],
        @"aarch64":
            @[
                @"ES1370",
                @"AC97",
                @"intel-hda",
                @"ich9-intel-hda",
                @"usb-audio",
            ],
        @"avr":
            @[
            ],
        @"cris":
            @[
            ],
        @"hppa":
            @[
                @"sb16",
                @"cs4231a",
                @"ES1370",
                @"gus",
                @"AC97",
                @"intel-hda",
                @"ich9-intel-hda",
                @"adlib",
                @"usb-audio",
            ],
        @"i386":
            @[
                @"sb16",
                @"cs4231a",
                @"ES1370",
                @"gus",
                @"AC97",
                @"intel-hda",
                @"ich9-intel-hda",
                @"adlib",
                @"usb-audio",
            ],
        @"m68k":
            @[
            ],
        @"microblaze":
            @[
            ],
        @"microblazeel":
            @[
            ],
        @"mips":
            @[
                @"sb16",
                @"cs4231a",
                @"ES1370",
                @"gus",
                @"AC97",
                @"intel-hda",
                @"ich9-intel-hda",
                @"adlib",
                @"usb-audio",
            ],
        @"mipsel":
            @[
                @"sb16",
                @"cs4231a",
                @"ES1370",
                @"gus",
                @"AC97",
                @"intel-hda",
                @"ich9-intel-hda",
                @"adlib",
                @"usb-audio",
            ],
        @"mips64":
            @[
                @"sb16",
                @"cs4231a",
                @"ES1370",
                @"gus",
                @"AC97",
                @"intel-hda",
                @"ich9-intel-hda",
                @"adlib",
                @"usb-audio",
            ],
        @"mips64el":
            @[
                @"sb16",
                @"cs4231a",
                @"ES1370",
                @"gus",
                @"AC97",
                @"intel-hda",
                @"ich9-intel-hda",
                @"adlib",
                @"usb-audio",
            ],
        @"nios2":
            @[
            ],
        @"or1k":
            @[
            ],
        @"ppc":
            @[
                @"sb16",
                @"cs4231a",
                @"ES1370",
                @"gus",
                @"AC97",
                @"intel-hda",
                @"ich9-intel-hda",
                @"screamer",
                @"adlib",
                @"usb-audio",
            ],
        @"ppc64":
            @[
                @"sb16",
                @"cs4231a",
                @"ES1370",
                @"gus",
                @"AC97",
                @"intel-hda",
                @"ich9-intel-hda",
                @"screamer",
                @"adlib",
                @"usb-audio",
            ],
        @"riscv32":
            @[
                @"ES1370",
                @"AC97",
                @"intel-hda",
                @"ich9-intel-hda",
                @"usb-audio",
            ],
        @"riscv64":
            @[
                @"ES1370",
                @"AC97",
                @"intel-hda",
                @"ich9-intel-hda",
                @"usb-audio",
            ],
        @"rx":
            @[
            ],
        @"s390x":
            @[
            ],
        @"sh4":
            @[
                @"sb16",
                @"cs4231a",
                @"ES1370",
                @"gus",
                @"AC97",
                @"intel-hda",
                @"ich9-intel-hda",
                @"adlib",
                @"usb-audio",
            ],
        @"sh4eb":
            @[
                @"sb16",
                @"cs4231a",
                @"ES1370",
                @"gus",
                @"AC97",
                @"intel-hda",
                @"ich9-intel-hda",
                @"adlib",
                @"usb-audio",
            ],
        @"sparc":
            @[
            ],
        @"sparc64":
            @[
                @"sb16",
                @"cs4231a",
                @"ES1370",
                @"gus",
                @"AC97",
                @"intel-hda",
                @"ich9-intel-hda",
                @"adlib",
                @"usb-audio",
            ],
        @"tricore":
            @[
            ],
        @"x86_64":
            @[
                @"sb16",
                @"cs4231a",
                @"ES1370",
                @"gus",
                @"AC97",
                @"intel-hda",
                @"ich9-intel-hda",
                @"adlib",
                @"usb-audio",
            ],
        @"xtensa":
            @[
                @"ES1370",
                @"AC97",
                @"intel-hda",
                @"ich9-intel-hda",
                @"usb-audio",
            ],
        @"xtensaeb":
            @[
                @"ES1370",
                @"AC97",
                @"intel-hda",
                @"ich9-intel-hda",
                @"usb-audio",
            ],
    }[architecture];
}

+ (NSArray<NSString *>*)supportedSoundCardsForArchitecturePretty:(NSString *)architecture {
    return @{
        @"alpha":
            @[
                @"Creative Sound Blaster 16 (sb16)",
                @"Crystal Semiconductor CS4231A (cs4231a)",
                @"ENSONIQ AudioPCI ES1370 (ES1370)",
                @"Gravis Ultrasound GF1 (gus)",
                @"Intel 82801AA AC97 Audio (AC97)",
                @"Intel HD Audio Controller (ich6) (intel-hda)",
                @"Intel HD Audio Controller (ich9) (ich9-intel-hda)",
                @"Yamaha YM3812 (OPL2) (adlib)",
                @"usb-audio",
            ],
        @"arm":
            @[
                @"ENSONIQ AudioPCI ES1370 (ES1370)",
                @"Intel 82801AA AC97 Audio (AC97)",
                @"Intel HD Audio Controller (ich6) (intel-hda)",
                @"Intel HD Audio Controller (ich9) (ich9-intel-hda)",
                @"usb-audio",
            ],
        @"aarch64":
            @[
                @"ENSONIQ AudioPCI ES1370 (ES1370)",
                @"Intel 82801AA AC97 Audio (AC97)",
                @"Intel HD Audio Controller (ich6) (intel-hda)",
                @"Intel HD Audio Controller (ich9) (ich9-intel-hda)",
                @"usb-audio",
            ],
        @"avr":
            @[
            ],
        @"cris":
            @[
            ],
        @"hppa":
            @[
                @"Creative Sound Blaster 16 (sb16)",
                @"Crystal Semiconductor CS4231A (cs4231a)",
                @"ENSONIQ AudioPCI ES1370 (ES1370)",
                @"Gravis Ultrasound GF1 (gus)",
                @"Intel 82801AA AC97 Audio (AC97)",
                @"Intel HD Audio Controller (ich6) (intel-hda)",
                @"Intel HD Audio Controller (ich9) (ich9-intel-hda)",
                @"Yamaha YM3812 (OPL2) (adlib)",
                @"usb-audio",
            ],
        @"i386":
            @[
                @"Creative Sound Blaster 16 (sb16)",
                @"Crystal Semiconductor CS4231A (cs4231a)",
                @"ENSONIQ AudioPCI ES1370 (ES1370)",
                @"Gravis Ultrasound GF1 (gus)",
                @"Intel 82801AA AC97 Audio (AC97)",
                @"Intel HD Audio Controller (ich6) (intel-hda)",
                @"Intel HD Audio Controller (ich9) (ich9-intel-hda)",
                @"Yamaha YM3812 (OPL2) (adlib)",
                @"usb-audio",
            ],
        @"m68k":
            @[
            ],
        @"microblaze":
            @[
            ],
        @"microblazeel":
            @[
            ],
        @"mips":
            @[
                @"Creative Sound Blaster 16 (sb16)",
                @"Crystal Semiconductor CS4231A (cs4231a)",
                @"ENSONIQ AudioPCI ES1370 (ES1370)",
                @"Gravis Ultrasound GF1 (gus)",
                @"Intel 82801AA AC97 Audio (AC97)",
                @"Intel HD Audio Controller (ich6) (intel-hda)",
                @"Intel HD Audio Controller (ich9) (ich9-intel-hda)",
                @"Yamaha YM3812 (OPL2) (adlib)",
                @"usb-audio",
            ],
        @"mipsel":
            @[
                @"Creative Sound Blaster 16 (sb16)",
                @"Crystal Semiconductor CS4231A (cs4231a)",
                @"ENSONIQ AudioPCI ES1370 (ES1370)",
                @"Gravis Ultrasound GF1 (gus)",
                @"Intel 82801AA AC97 Audio (AC97)",
                @"Intel HD Audio Controller (ich6) (intel-hda)",
                @"Intel HD Audio Controller (ich9) (ich9-intel-hda)",
                @"Yamaha YM3812 (OPL2) (adlib)",
                @"usb-audio",
            ],
        @"mips64":
            @[
                @"Creative Sound Blaster 16 (sb16)",
                @"Crystal Semiconductor CS4231A (cs4231a)",
                @"ENSONIQ AudioPCI ES1370 (ES1370)",
                @"Gravis Ultrasound GF1 (gus)",
                @"Intel 82801AA AC97 Audio (AC97)",
                @"Intel HD Audio Controller (ich6) (intel-hda)",
                @"Intel HD Audio Controller (ich9) (ich9-intel-hda)",
                @"Yamaha YM3812 (OPL2) (adlib)",
                @"usb-audio",
            ],
        @"mips64el":
            @[
                @"Creative Sound Blaster 16 (sb16)",
                @"Crystal Semiconductor CS4231A (cs4231a)",
                @"ENSONIQ AudioPCI ES1370 (ES1370)",
                @"Gravis Ultrasound GF1 (gus)",
                @"Intel 82801AA AC97 Audio (AC97)",
                @"Intel HD Audio Controller (ich6) (intel-hda)",
                @"Intel HD Audio Controller (ich9) (ich9-intel-hda)",
                @"Yamaha YM3812 (OPL2) (adlib)",
                @"usb-audio",
            ],
        @"nios2":
            @[
            ],
        @"or1k":
            @[
            ],
        @"ppc":
            @[
                @"Creative Sound Blaster 16 (sb16)",
                @"Crystal Semiconductor CS4231A (cs4231a)",
                @"ENSONIQ AudioPCI ES1370 (ES1370)",
                @"Gravis Ultrasound GF1 (gus)",
                @"Intel 82801AA AC97 Audio (AC97)",
                @"Intel HD Audio Controller (ich6) (intel-hda)",
                @"Intel HD Audio Controller (ich9) (ich9-intel-hda)",
                @"Screamer (Mac99 only)",
                @"Yamaha YM3812 (OPL2) (adlib)",
                @"usb-audio",
            ],
        @"ppc64":
            @[
                @"Creative Sound Blaster 16 (sb16)",
                @"Crystal Semiconductor CS4231A (cs4231a)",
                @"ENSONIQ AudioPCI ES1370 (ES1370)",
                @"Gravis Ultrasound GF1 (gus)",
                @"Intel 82801AA AC97 Audio (AC97)",
                @"Intel HD Audio Controller (ich6) (intel-hda)",
                @"Intel HD Audio Controller (ich9) (ich9-intel-hda)",
                @"Screamer (Mac99 only)",
                @"Yamaha YM3812 (OPL2) (adlib)",
                @"usb-audio",
            ],
        @"riscv32":
            @[
                @"ENSONIQ AudioPCI ES1370 (ES1370)",
                @"Intel 82801AA AC97 Audio (AC97)",
                @"Intel HD Audio Controller (ich6) (intel-hda)",
                @"Intel HD Audio Controller (ich9) (ich9-intel-hda)",
                @"usb-audio",
            ],
        @"riscv64":
            @[
                @"ENSONIQ AudioPCI ES1370 (ES1370)",
                @"Intel 82801AA AC97 Audio (AC97)",
                @"Intel HD Audio Controller (ich6) (intel-hda)",
                @"Intel HD Audio Controller (ich9) (ich9-intel-hda)",
                @"usb-audio",
            ],
        @"rx":
            @[
            ],
        @"s390x":
            @[
            ],
        @"sh4":
            @[
                @"Creative Sound Blaster 16 (sb16)",
                @"Crystal Semiconductor CS4231A (cs4231a)",
                @"ENSONIQ AudioPCI ES1370 (ES1370)",
                @"Gravis Ultrasound GF1 (gus)",
                @"Intel 82801AA AC97 Audio (AC97)",
                @"Intel HD Audio Controller (ich6) (intel-hda)",
                @"Intel HD Audio Controller (ich9) (ich9-intel-hda)",
                @"Yamaha YM3812 (OPL2) (adlib)",
                @"usb-audio",
            ],
        @"sh4eb":
            @[
                @"Creative Sound Blaster 16 (sb16)",
                @"Crystal Semiconductor CS4231A (cs4231a)",
                @"ENSONIQ AudioPCI ES1370 (ES1370)",
                @"Gravis Ultrasound GF1 (gus)",
                @"Intel 82801AA AC97 Audio (AC97)",
                @"Intel HD Audio Controller (ich6) (intel-hda)",
                @"Intel HD Audio Controller (ich9) (ich9-intel-hda)",
                @"Yamaha YM3812 (OPL2) (adlib)",
                @"usb-audio",
            ],
        @"sparc":
            @[
            ],
        @"sparc64":
            @[
                @"Creative Sound Blaster 16 (sb16)",
                @"Crystal Semiconductor CS4231A (cs4231a)",
                @"ENSONIQ AudioPCI ES1370 (ES1370)",
                @"Gravis Ultrasound GF1 (gus)",
                @"Intel 82801AA AC97 Audio (AC97)",
                @"Intel HD Audio Controller (ich6) (intel-hda)",
                @"Intel HD Audio Controller (ich9) (ich9-intel-hda)",
                @"Yamaha YM3812 (OPL2) (adlib)",
                @"usb-audio",
            ],
        @"tricore":
            @[
            ],
        @"x86_64":
            @[
                @"Creative Sound Blaster 16 (sb16)",
                @"Crystal Semiconductor CS4231A (cs4231a)",
                @"ENSONIQ AudioPCI ES1370 (ES1370)",
                @"Gravis Ultrasound GF1 (gus)",
                @"Intel 82801AA AC97 Audio (AC97)",
                @"Intel HD Audio Controller (ich6) (intel-hda)",
                @"Intel HD Audio Controller (ich9) (ich9-intel-hda)",
                @"Yamaha YM3812 (OPL2) (adlib)",
                @"usb-audio",
            ],
        @"xtensa":
            @[
                @"ENSONIQ AudioPCI ES1370 (ES1370)",
                @"Intel 82801AA AC97 Audio (AC97)",
                @"Intel HD Audio Controller (ich6) (intel-hda)",
                @"Intel HD Audio Controller (ich9) (ich9-intel-hda)",
                @"usb-audio",
            ],
        @"xtensaeb":
            @[
                @"ENSONIQ AudioPCI ES1370 (ES1370)",
                @"Intel 82801AA AC97 Audio (AC97)",
                @"Intel HD Audio Controller (ich6) (intel-hda)",
                @"Intel HD Audio Controller (ich9) (ich9-intel-hda)",
                @"usb-audio",
            ],
    }[architecture];
}

@end

